smengcl opened a new pull request, #11645:
URL: https://github.com/apache/ozone/pull/11645

   Generated-by: Claude Code (Opus 5.5)
   
   ## What changes were proposed in this pull request?
   
   HDDS-17151 (OM fails to start after a downgrade because of db.snapdiff) was 
not caught by the upgrade acceptance test. The common non-rolling upgrade 
callback does not touch snapshots, and after each restart the test only waits 
for one OM leader. `ozone admin om roles` reports peers from config, so it does 
not notice a follower that failed to start either.
   
   This PR:
   
   - Adds `smoketest/upgrade/snapshot.robot`, which creates a snapshot of the 
`old1` bucket, reads the key through the `.snapshot` path of snapshots from 
earlier phases, and diffs against the previous snapshot until the job is `DONE`.
   - Runs it in every phase of the non-rolling upgrade. The old version also 
runs a diff before the upgrade: the new version replays that WAL into 
`db.snapdiff` SST files, which the old version must read after the downgrade. 
Skipped when upgrading from versions before 1.4.0.
   - Waits for the RPC port of every OM after each restart (`wait_for_all_oms`).
   
   Suggested by @errose28 in 
https://github.com/apache/ozone/pull/11633#issuecomment-6292013134.
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-17192
   
   ## How was this patch tested?
   
   Ran `compose/upgrade/test.sh` (ha, non-rolling, 2.2.1 to current) locally: 
passed.
   
   With the HDDS-17151 fix reverted in the OM jar, the run fails in the 
downgraded phase: one OM does not start (`Corrupt or unsupported 
format_version: 6 in file /data/metadata/db.snapdiff/MANIFEST-000028`), and 
`wait_for_all_oms` times out on it.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to