gobblin
gobblin copied to clipboard
[GOBBLIN-1599] Fixes Avro usage on deprecated APIs
Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA
https://issues.apache.org/jira/browse/GOBBLIN-1599
Description
Gobblin depended on an old deprecated Avro API that worked with Jackson JsonNode objects. In Gobblin's default Avro dependency version (1.8) these APIs were already marked as deprecated. In Avro 1.9 these APIs were replaced by similar APIs that work with Object rather than JsonNode Java objects.
Tests
My PR does not need unit tests to validate whether it is working. Simply attempting to compile the project with a flag to inject avro 1.9+ (-PavroVersion=1.9.1) validates that this PR fixes the issue.
Functionally the change also worked appropriately as I was able to use newer Avro versions to read events from Kafka using gobblin jobs that depended on these new versions.
Commits
- [x] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
- Subject is separated from body by a blank line
- Subject is limited to 50 characters
- Subject does not end with a period
- Subject uses the imperative mood ("add", not "adding")
- Body wraps at 72 characters
- Body explains "what" and "why", not "how"
@abhisheknath2011 Please review
@pedro93 Can you create a ticket on Apache JIRA and link it in the PR description? Thanks.
Done
@pedro93, Thanks for sending the PR. Just wanted to update you that we are working on Avro 1.9 upgrade and some part of the work is already merged to a new branch avro_1_9. The final PR testing is current in progress. The changes in this PR are already done as part of that work. Hence, it would take couple of more weeks to merge all the changes to the master branch. As this PR is redundant, I hope you would be able to wait for couple of more weeks. Thanks.