RussellSpitzer opened a new issue, #4616:
URL: https://github.com/apache/iceberg/issues/4616

   StructLike does not force the proper implementation of `hashCode` or 
`equals` and because of this is cannot be used in Sets or Maps safely. If the 
wrong implementation gets placed inside these containers they will not behave 
as expected.
   
   Users should instead use
   
   
[StructLikeMap](https://github.com/apache/iceberg/blob/30639ef316a899480a3d0c88f8ea6498d9a21306/core/src/main/java/org/apache/iceberg/util/StructLikeMap.java#L32)
 or 
[StructLikeSet](https://github.com/apache/iceberg/blob/30639ef316a899480a3d0c88f8ea6498d9a21306/core/src/main/java/org/apache/iceberg/util/StructLikeSet.java#L33)
   
   Another option is to use the concrete StructLike that particular map or set 
requires if applicable.
   
   Checkstyle rules can be added like
   
   
https://github.com/apache/iceberg/blob/master/.baseline/checkstyle/checkstyle.xml#L54-L57


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