Files
netbird/management/server/migration
Brad Ison 8143016a95 fix(migration): resume the settings reshape after a partial run on mysql
MySQL implicitly commits around every ALTER TABLE, so the transaction
wrapping the reshape is real only on sqlite and postgres. On MySQL an
interrupted run could stop between the two legacy column drops, and the
rerun keyed its already-migrated check on the cluster column alone --
leaving the subdomain column behind forever.

Key the entry check on either legacy column remaining, run the backfill
and its loud-failure check only while the cluster column exists (they
provably completed before any drop), and skip drops for columns already
gone. No data-loss window existed in any state: the backfill commits
before the first drop on every engine.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-08 16:25:12 +02:00
..