Github user omalley commented on the pull request:
https://github.com/apache/orc/pull/29
Ok, this needed a relatively large change. To compare the schemas, I wanted
to make TypeDescription implement Comparable, but the equals and hashCode were
set up to match against the id, which would have largely screwed things up. So,
I made SchemaEvolution use a HashMap<Integer, TypeDescription> and used the id
as the key. That is more straightforward and let me change the semantics of
equals and hashCode to be more reasonable. While I was in TypeDescription, I
also made it Serializable since FindBugs was complaining about the OrcList and
OrcMap having non-serializable fields.
I also added a log4j.properties file into the test resources so that the
log messages come out to the console during unit tests.
I also changed the 4 complex ORC types to implement WritableComparable,
which ORC-53 had done to better match with MapReduce's requirements for key
types.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---