xiangfu0 opened a new pull request, #19592:
URL: https://github.com/apache/pinot/pull/19592

   ## Change
   
   `ComplexFieldSpec` inherited equality and hashing that ignored its child 
fields. Two complex definitions with different nested types or default values 
could therefore compare equal, and `Schema.equals()` could miss a schema change.
   
   Override `equals()` and `hashCode()` to include the child map recursively 
while preserving comparison of inherited attributes. Equal children compare 
independently of map iteration order. Complex-parent interning remains 
unchanged.
   
   Regression tests in the existing FieldSpecTest cover equal hashes/hash-based 
lookup, nested defaults, child types, missing children and inherited 
attributes. Existing metadata tests now assert inequality for different complex 
children.
   
   This is the base PR for #19571, which will contain only table-schema reuse.
   
   ## Validation
   
   137 focused tests passed, zero failures/errors/skips: FieldSpec/schema (85), 
column metadata (32), segment metadata, schema evolution and complex 
transformations (20). Spotless, Checkstyle and license checks pass on the 
affected modules. CI and review are separate.
   


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