LuciferYang opened a new issue, #13240:
URL: https://github.com/apache/gravitino/issues/13240

   **Version**
   main branch
   
   **Describe what's wrong**
   The Day and Identity partitioning DTOs carry `@EqualsAndHashCode(callSuper = 
true)`, but Hour/Month/Year lack it and inherit `SingleFieldPartitioning`'s 
Lombok `equals`, so different strategies over the same field compare equal 
(`hour(ts).equals(month(ts))` is `true`) and Set-based dedup silently merges 
distinct partitioning strategies.
   
   **Error message and/or stacktrace**
   N/A: incorrect `equals` result, no exception.
   
   **How to reproduce**
   Compare an `HourPartitioningDTO` and a `MonthPartitioningDTO` over the same 
field; `equals` returns `true`. Adding both to a `Set` collapses them.
   
   **Additional context**
   This is the DTO-layer counterpart of the `SingleFieldTransform` equality 
fix. Found during a code audit of the `common` module.
   


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

Reply via email to