feat: pglogical ddl migrator - #3966
Conversation
amokan
left a comment
There was a problem hiding this comment.
🤖 AI-generated review feedback (Claude Code), reviewed by @amokan
Three blocking findings, posted as inline comments: raw
execute/1SQL being wrapped inreplicate_ddl_command,rollback/2not routed throughLogflare.Repo.Migrator, and no CI job exercisingpriv/repo/migrations/*through the wrapper (which is what keeps the first one green).
e2572d3 to
a55b8a2
Compare
|
@claude Please review this. |
|
Claude finished @djwhitt's task in 2m 11s —— View job Review of pglogical DDL migrator
Note: I don't have Status of the three previously-flagged blocking issues (all appear resolved)
Tests in Remaining observations (non-blocking)
Overall: the fixes from the earlier AI/human review round look correctly and narrowly applied, with the risky raw-SQL replication behavior now opt-in and tested, and rollback paths consistently routed. Nothing blocking found on this pass. |
3eea147 to
8e5b26e
Compare
| Enum.each([Logflare.Repo.Pglogical, PglogicalPrimaryRepo], &stop_repo/1) | ||
| end) | ||
|
|
||
| reset_public_schema!(primary_conn) |
There was a problem hiding this comment.
🤖
The CI job runs the real migrations on the pglogical primary, but these tests reset both schemas before checking the subscriber. Could we wait for and assert a representative table or column from the real migration suite on the subscriber first? The toy migrations test the replication mechanism, but not the resulting application schema.
Adds a pglogical ddl migrator that wraps the migration functions and explicitly propagates the ddl statements.
Added a demo script to verify that it is working, tested on local dev.
closes O11Y-2491
pre-merge checklist: