!djTaTBQyWEPRQxrPTb:nixos.org

Nixpkgs Architecture Team

229 Members
https://github.com/nixpkgs-architecture, weekly public meetings on Wednesday 15:00-16:00 UTC at https://meet.jit.si/nixpkgs-architecture51 Servers

Load older messages


SenderMessageTime
19 Jun 2023
@ronnypfannschmidt:matrix.org@ronnypfannschmidt:matrix.org
In reply to @adis:blad.is
I think you'd want similar sandboxing guarantees in your migrations as you would at build time?
cant exactly run a remote database migration without network
12:44:13
@adis:blad.isadisbladis
In reply to @ronnypfannschmidt:matrix.org
cant exactly run a remote database migration without network
No, but tooling like pg_upgrade doesn't work on network connections
12:44:46
@ronnypfannschmidt:matrix.org@ronnypfannschmidt:matrix.orgbut application level schema migrations do for example12:45:07
@ronnypfannschmidt:matrix.org@ronnypfannschmidt:matrix.orgsame goes for online migration using replication to avoid downtime12:45:38
@adis:blad.isadisbladis^ This is also why dealing with migrations in a generalised manner isn't really that feasible. Everyone has very different operational constraints.12:47:50
@adis:blad.isadisbladis If we took the example from infinisil before where we'd print out migration steps.. I don't think that would realistically contain the steps for how to do zero downtime deploys. 12:48:45
@growpotkin1:matrix.orggrowpotkin ( Alex Ameen ) I'm not seeing how to review this. I think I already did 20:24:43
@piegames:matrix.org@piegames:matrix.orgHm, then you can also give your approval in here and I'll start FCP20:51:55
@infinisil:matrix.orginfinisil growpotkin ( Alex Ameen ): Just review the RFC on GitHub again with an approve 20:57:15
@infinisil:matrix.orginfinisilLike the standard way of reviewing PR's on GitHub20:57:42
@raitobezarius:matrix.orgraitobezarius
In reply to @ronnypfannschmidt:matrix.org

is anyone aware of work on managing state versions and migration for components (like database server versions, database migration, data store migration)

i have had a number of times now where a upgrade that would ultimately fail at the end broke system state by runnign database migrations that the old versions couldnt use anymore (in particular nextcloud)

I wrote an issue on this
21:18:52
@raitobezarius:matrix.orgraitobezariusAnd I am planning to do research on that in the next year21:19:11
@raitobezarius:matrix.orgraitobezarius(academical research)21:19:18
@raitobezarius:matrix.orgraitobezariusBut like first thing first should be taking care of ensure-style options21:20:20
@raitobezarius:matrix.orgraitobezariusAnd making convergence works21:20:25
@raitobezarius:matrix.orgraitobezariusOnce you have convergence, state migration is also a form of convergence 21:20:38
@raitobezarius:matrix.orgraitobezariusWith different performance properties (a lot of data, etc.)21:20:48
@raitobezarius:matrix.orgraitobezarius
In reply to @adis:blad.is
^ This is also why dealing with migrations in a generalised manner isn't really that feasible. Everyone has very different operational constraints.
Yes but deriving automatically the strategy based on composable parts seems possible IMHO
21:21:32
@raitobezarius:matrix.orgraitobezarius
In reply to @ronnypfannschmidt:matrix.org
right now there is no safe tooling for it, so its easy to mess up
The stopgap solution for now is to have a global nixos module knob to disable automated migrations
21:22:59
@raitobezarius:matrix.orgraitobezariusOr to enforce a RFC saying that all nixos modules should have an automatic migration flag21:23:22
@raitobezarius:matrix.orgraitobezariusDuring all my reviews, contributors usually don't want to bother and complain when I say this is a serious problem21:23:42
20 Jun 2023
@ronnypfannschmidt:matrix.org@ronnypfannschmidt:matrix.orgall modules either get safe migrations or need a unsafe flag per module in peoples config08:11:22
@ronnypfannschmidt:matrix.org@ronnypfannschmidt:matrix.orgthen users can understand the quality levels by the unsafe migration flags they have to set08:11:59
@piegames:matrix.org@piegames:matrix.org What is a "safe" migration? How many upstreams even allow implementing this in the first place? 08:12:48
@raitobezarius:matrix.orgraitobezariussafe migrations does not exist10:23:45
@raitobezarius:matrix.orgraitobezariusbut unsafe migrations can always be made safe10:23:54
@raitobezarius:matrix.orgraitobezariusdepend on how much resources you are ready to commit for it10:24:01
@piegames:matrix.org@piegames:matrix.org But how 10:27:24
@raitobezarius:matrix.orgraitobezariustrivial safe migration algorithm:10:33:42
@raitobezarius:matrix.orgraitobezarius * trivial safe migration algorithm based on unsafe procedure M10:33:50

Show newer messages


Back to Room ListRoom Version: 9