-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
PARQUET-1529: Shade fastutil in all modules where used (#617)
- Loading branch information
1 parent
9461845
commit dcfd53a
Showing
3 changed files
with
8 additions
and
22 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
dcfd53a
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As you now have activated the shade plugin here, does this now also shade the jackson classes, right?
Was the previous non-shading of jackson on parquet.hadoop intentionally? (You already had the parquet-jackson dependency)
dcfd53a
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The jackson classes are shaded by the separate module
parquet-jackson
. The adding of the shade plugin here did not change the original idea of handling the jackson dependency so, jackson was not shaded byparquet-hadoop
directly and is still not shaded.See https://github.com/apache/parquet-mr/blob/master/parquet-jackson/README.md for more details.
dcfd53a
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. I already read the parquet-jackson docu.
Just my two cents:
dcfd53a
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Due to the new feature column-indexes (to be introduced in 1.11.0) parquet-hadoop has started using using some fastutil classes. It was working just fine in the unit test level and in some runtime environments but in one it was failed (it was spark as far as I remember). The problem was that fastutil supposed to be shaded by parquet, so no one should ever need this lib as a runtime dependency. I've fixed this problem by adding the default shade plugin (with the configuration in the root which includes both jackson and fastutil) to the modules where fastutil or jackson is used.
So, after this change all the modules which depend on fastutil is also shading it (not in the way we shade jackson but the common way by shading the required classes jar-by-jar).