Skip to content

Conversation

@Forus0322
Copy link
Contributor

@Forus0322 Forus0322 commented Sep 15, 2023

Change Logs

Add jackson dependencies.
Fixes #9725

Impact

Fix master build

Risk level (write none, low medium or high below)

none

Documentation Update

Describe any necessary documentation update if there is any new feature, config, or user-facing change

  • The config description must be updated if new configs are added or the default value of the configs are changed
  • Any new feature or user-facing change requires updating the Hudi website. Please create a Jira ticket, attach the
    ticket number here and follow the instruction to make
    changes to the website.

Contributor's checklist

  • Read through contributor's guide
  • Change Logs and Impact were stated clearly
  • Adequate tests were added if applicable
  • CI passed

@codope codope changed the title [Hudi-9725] Build failed using master [MINOR] Build failed using master Sep 15, 2023
<version>${disruptor.version}</version>
</dependency>

<dependency>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't this already be included? Perhaps the build is failing for some profile. Can you share the build command?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

mvn clean package install -DskipTests -Dspark3.3 -Dscala-2.12 -Dhadoop.version=3.3.0 -Dhive.version=3.1.2 -Phudi-platform-service  -Dcheckstyle.skip=true -Drat.skip=true -Pm1-mac -Pthrift-gen-source -Pflink1.14

It's due to -Dhadoop.version=3.3.0?

Copy link
Contributor Author

@Forus0322 Forus0322 Sep 15, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just tried it, this problem will occur when using Hadoop 3.3.0 and Spark3.2+(3.2/3.3/3.4).

pom.xml Outdated
<artifactId>jackson-core-asl</artifactId>
<version>1.9.13</version>
</dependency>
</dependencies>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we support hadoop 3.x compile?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have been using -Dhadoop.version=3.3.0 for a long time and there have been no problems.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have a long suspended PR #5786 before for Hadoop 3.x compatibility, not sure how it works for your env.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PR #5786 is adapted to the hadoop3.x environment, but if parquet.version is configured with version 0.12.2, the problem of missing jackson package will still occur. The currently submitted PR #9726 is mainly to solve the problem of compilation failure caused by the lack of jackson dependency package in the Hadoop 3 environment. It is not adapted to the hadoop 3 environment.
As for adapting hadoop3, it may take longer to fully test and verify.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Got it, jackson is a jar that is very easy to conflict.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Forus0322 Can you double check jackson-core-asl is included for hadoop3.3 profile only?

@yihua
Copy link
Contributor

yihua commented Sep 22, 2023

@danny0405 @codope are you good with the changes?

@nsivabalan
Copy link
Contributor

@codope @yihua : can we close this one ?

Copy link
Member

@codope codope left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Forus0322 Left one comment for clarification. Can you please rebase as well?

pom.xml Outdated
<artifactId>jackson-core-asl</artifactId>
<version>1.9.13</version>
</dependency>
</dependencies>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@Forus0322 Can you double check jackson-core-asl is included for hadoop3.3 profile only?

@Forus0322
Copy link
Contributor Author

@codope Hi, I reanalyzed the problem. The essence is that parquet 1.10.1 contains the org.codehaus.jackson dependency package, and parquet 1.12.0 version does not contain the org.codehaus.jackson dependency package.

Secondly, the JsonEncoder class under the hudi-common-base package uses the org.codehaus.jackson dependency package, and hudi-common-base references the parquet-avro dependency package, so when compiling with parquet.version 1.10.1, There is no problem; but when using parquet.version 1.12.0, there will be a missing JsonEncoder dependency problem.

Therefore, this issue does not need to be included in the current PR, just specify parquet.version 1.10.1.

But if you want to use parquet.version 1.12.0, you need to add an additional org.codehaus.jackson dependency.

The current PR can modify the profile, not hadoop3.3, but add the org.codehaus.jackson dependency to any profile using version 1.12.0.

Do you think it is necessary to modify it again?

image
image

@danny0405
Copy link
Contributor

If we are talking about the version coflicts between the explcity introduced jackson jar and the parquet jar, it is actually a bug, should have a fix.

@Forus0322
Copy link
Contributor Author

@danny0405 I have added jackson dependency to all profiles using parquet.version 1.12.x. How about modifying it like this?

@hudi-bot
Copy link
Collaborator

CI report:

Bot commands @hudi-bot supports the following commands:
  • @hudi-bot run azure re-run the last Azure build

@github-actions github-actions bot added the size:S PR with lines of changes in (10, 100] label Feb 26, 2024
Copy link
Contributor

@yihua yihua left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Closing this PR as we'll upgrade Hadoop to 3.x after we remove support of Spark 2, 3.0, 3.1, and 3.2: HUDI-7917, HUDI-2955.

@yihua yihua closed this Sep 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:S PR with lines of changes in (10, 100]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Build failed using master,

6 participants