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

   ## What changes were proposed in this pull request?
   ### Explanation of the Changes :- 
   Map Structure Change: The `omdbLatestUpdateEvents` map has been changed from 
`Map<Object, OMDBUpdateEvent>` to `Map<String, Map<Object, OMDBUpdateEvent>>`. 
This nested map structure ensures that each table's events are stored 
separately, avoiding key collisions between different tables.
   
   Event Processing Logic: The `processEvent` method now uses the table name as 
the first-level key in the map. If a key already exists for a table, it 
retrieves the nested map and updates or adds the event. This change ensures 
that events from different tables with the same key structure are isolated and 
correctly processed.
   
   ### How it Fixes the Problem
   This change ensures that events from different tables with the same key 
structure do not overwrite each other, preventing the `ClassCastException` 
caused by fetching incorrect event types. By segregating events by table name, 
we avoid the corruption caused by key collisions, leading to more reliable 
event processing in Recon.
   
   ### Logs and Future Fixes
   We have previously added logs to capture events that could lead to 
`ClassCastException`. These logs help identify corrupted events generated from 
the OM side, which need to be fixed. Our changes in this patch address possible 
corruption in event creation on the Recon side. The root problem on the OM side 
persists and requires fixing. The logs added in the previous patch 
(**HDDS-8310**) will help report these issues, and we should wait for these 
logs to guide further fixes.
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-11187
   
   ## How was this patch tested?
   


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