You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Create or update /app/* znodes on the source and verify target receives them through watch-triggered sync.
Delete /app/service-c on the source and verify target removes the business znode and writes deleted=true tombstone metadata under /__ape_dts_shadow/app/service-c.
Stop the dt-main process, write more data on the source, restart dt-main, and verify initial full reconciliation brings target data back into consistency.
Put a TCP proxy between dt-main and source ZooKeeper, stop the proxy long enough for session uncertainty/expiry, and verify logs show session_uncertain protection and skipped periodic reconciliation while the session is uncertain.
This issue tracks the PR-level fix and merge evidence. It is not a release-ready claim. Checkpoint recovery was SKIP in this run because the test config used Dummy resumer.
Problem
PR #504 fixes ZooKeeper dual-active registry sync risks in ape-dts.
The old implementation relied on scan-style synchronization and did not have enough protection for the production dual-active cases we reviewed:
Test scenario
The constructed scenario is two ZooKeeper 3.9 instances running as source and target, with ape-dts tasks syncing in dual-active style.
Validation covers:
Reproducibility
This is reproducible with the IDC2 ZooKeeper pair and the PR branch used by #504.
Observed endpoints in the test record:
192.168.10.41:32347192.168.10.41:31188Reproduction steps
/app/*znodes on the source and verify target receives them through watch-triggered sync./app/service-con the source and verify target removes the business znode and writesdeleted=truetombstone metadata under/__ape_dts_shadow/app/service-c.session_uncertainprotection and skipped periodic reconciliation while the session is uncertain.Evidence
c1b4ea3a7555d1007ae9a32510507fb6f3274169#ape-dts:a19dc224, msgsb36cd66b,a200fc80,3a8849afBoundary
This issue tracks the PR-level fix and merge evidence. It is not a release-ready claim. Checkpoint recovery was SKIP in this run because the test config used Dummy resumer.