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

   ## What changes were proposed in this pull request?
   Refactored the sequenceIdTable from Table<String, Long> to 
Table<SequenceIdType, Long>, adapting SequenceIdType for our in-memory data 
structure - sequenceIdTable. To handle this cleanly, I introduced a new 
SequenceIdTypeCodec implementation that serializes the enum constants to the 
exact same binary format as the old strings, ensuring absolute compatibility 
and continuity on disk.
   
   ## Please describe your PR in detail:
   While refactoring noticed SCMMetadataStore.java lives in the framework 
module and SequenceIdType.java was created inside the server-scm module. To 
avoid the circular dependencies, moved SequenceIdType and it's test class in 
framework module.
   
   Created new codec implementation for SequenceIdType-  "SequenceIdTypeCodec" 
and updated SCMDBDefinition by replacing with StringCodec.
   Updated SCMMetadataStore and it's implementation with required changes.
   Updated SequenceIdGenerator for adapting SequenceIdType under 
sequenceIdTable.
   Added new test for SequenceIdTypeCodec ensuring serialization and 
desrialization works as it is.
   
   ## What is the link to the Apache JIRA
   https://issues.apache.org/jira/browse/HDDS-15370
   ## How was this patch tested?
   Unit test with new test class-TestSequenceIdTypeCodec
   Ran docker-compose locally with secure cluster and validated the logs 
   
[HDDS-15370.log](https://github.com/user-attachments/files/28370288/HDDS-15370.log)
   CI BUILD: https://github.com/navinko/ozone/actions/runs/26605659056 
{Progressing}
   


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