errose28 commented on PR #9664:
URL: https://github.com/apache/ozone/pull/9664#issuecomment-4607273395

   I have updated the doc based on two design flaws that were exposed during 
development:
   
   ## If the finalize command is sent only to SCM, OM cannot reliably learn 
when to finalize
   
   There may be release which only increase the OM component version. In this 
case SCM will be automatically finalized on startup. If OM only polls SCM and 
finalizes automatically when SCM's software and apparent versions match, it 
would incorrectly finalize on startup without an admin command, preventing 
downgrade. Additionally the finalize and status commands cannot use one CLI to 
contact both OM and SCM since they are usually configured with different 
kerberos principals. The updated upgrade finalize and status commands now go to 
OM only and pass through to SCM. OM writes a marker to its DB to indicate that 
a finalize command was given and that it should start polling SCM for HDDS 
finalization status. The order of component finalization (SCM -> DNs -> OM) 
remains the same.
   
   ## Missing handling of mixed software datanodes during container replication
   
   The previous design only accounted for datanodes with different apparent 
versions but identical software versions. A Datanode client/source in the new 
software version pushing a container to a Datanode server/target with an old 
software version would still have compatibility issues. In the new design the 
lowest apparent version to use on the replication path is provided by SCM, 
similar to what is done on the write path. This negates the need for Datanodes 
to finalize automatically when contacted by a newer peer.


-- 
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