Channel Pipeline gets into this a little, starting with a question below. This dev is working .NET port too.
and of course performing backups touches the database lots, but I’m lost deeper (not a C# or SQL dev).
At a high level, for backups (and other operations use the same underlying code, maybe differently) see
and put that with the high level commentary from the channel pipeline thread, and look at coding details.
sounds like a very good match (details TBD) to the above. I just thought I’d cite some previous research.
which is why I point out that it isn’t quite working correctly, although it’s pretty close in typical scenarios. GitHub issues and source history show some of the work, but I don’t know how much was design level, versus how much was tweaking the code into possibly odd forms to avoid having to change the design.
The databases for backups can get huge. The faster any conversions can run, the happier users will be.