Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HADOOP-15983. Use jersey-json that is built to use jackson2 #3988

Merged
merged 5 commits into from
Apr 28, 2022

Conversation

pjfanning
Copy link
Contributor

Description of PR

Use a jersey-json fork that supports jackson 2. This jar is still a prototype. This PR is experimental and not yet for merging.

How was this patch tested?

For code changes:

  • Does the title or this PR starts with the corresponding JIRA issue id (e.g. 'HADOOP-17799. Your PR title ...')?
  • Object storage: have the integration tests been executed and the endpoint declared according to the connector-specific documentation?
  • If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
  • If applicable, have you updated the LICENSE, LICENSE-binary, NOTICE-binary files?

@pjfanning pjfanning marked this pull request as draft February 11, 2022 19:01
@hadoop-yetus

This comment was marked as outdated.

@hadoop-yetus

This comment was marked as outdated.

@hadoop-yetus

This comment was marked as outdated.

@pjfanning pjfanning marked this pull request as ready for review February 17, 2022 00:36
@hadoop-yetus

This comment was marked as outdated.

@pjfanning pjfanning force-pushed the jersey-json branch 2 times, most recently from f6900e1 to 30fd735 Compare February 22, 2022 19:08
@hadoop-yetus

This comment was marked as outdated.

@hadoop-yetus

This comment was marked as outdated.

@hadoop-yetus

This comment was marked as outdated.

@hadoop-yetus

This comment was marked as outdated.

@pjfanning
Copy link
Contributor Author

@aajisaka when you get a chance, could you review this? I'm not sure if the failing tests are related to the change.

@hadoop-yetus

This comment was marked as outdated.

@hadoop-yetus

This comment was marked as outdated.

@hadoop-yetus

This comment was marked as outdated.

@hadoop-yetus

This comment was marked as outdated.

@pjfanning
Copy link
Contributor Author

pjfanning commented Apr 11, 2022

@aajisaka there is a still a problem with this change - see https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-3988/16/artifact/out/patch-mvninstall-root.txt

[INFO] Apache Hadoop Client Packaging Invariants for Test . FAILURE [  0.824 s]

The issue is this (truncated a bit):

[ERROR] Found artifact with unexpected contents: '/home/jenkins/jenkins-agent/workspace/hadoop-multibranch_PR-3988/ubuntu-focal/src/hadoop-client-modules/hadoop-client-minicluster/target/hadoop-client-minicluster-3.4.0-SNAPSHOT.jar'
    Please check the following and either correct the build or update
    the allowed list with reasoning.

    javax/
    javax/xml/
    javax/xml/bind/
    javax/xml/bind/annotation/
    javax/xml/bind/annotation/adapters/
    javax/xml/bind/annotation/adapters/XmlAdapter.class
    javax/xml/bind/annotation/adapters/XmlJavaTypeAdapters.class
    javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter$DEFAULT.class
    javax/xml/bind/annotation/adapters/XmlJavaTypeAdapter.class
    javax/xml/bind/annotation/adapters/CollapsedStringAdapter.class
    javax/xml/bind/annotation/adapters/HexBinaryAdapter.class
    javax/xml/bind/annotation/adapters/NormalizedStringAdapter.class
    javax/xml/bind/annotation/XmlValue.class
    javax/xml/bind/annotation/XmlRegistry.class
    javax/xml/bind/annotation/XmlElements.class
    javax/xml/bind/annotation/XmlElement$DEFAULT.class
    javax/xml/bind/annotation/XmlElement.class
    javax/xml/bind/annotation/XmlSchema.class
    javax/xml/bind/annotation/XmlNs.class
    javax/xml/bind/annotation/XmlNsForm.class
    javax/xml/bind/annotation/XmlType$DEFAULT.class
    javax/xml/bind/annotation/XmlType.class
    javax/xml/bind/annotation/XmlElementRefs.class
    javax/xml/bind/annotation/XmlElementRef$DEFAULT.class
    javax/xml/bind/annotation/XmlElementRef.class
    javax/xml/bind/annotation/XmlElementDecl$GLOBAL.class
    javax/xml/bind/annotation/XmlElementDecl.class
    javax/xml/bind/annotation/XmlElementWrapper.class
    javax/xml/bind/annotation/DomHandler.class
    javax/xml/bind/annotation/XmlMimeType.class
    javax/xml/bind/annotation/XmlSeeAlso.class
    javax/xml/bind/annotation/W3CDomHandler.class
    javax/xml/bind/annotation/XmlIDREF.class
    javax/xml/bind/annotation/XmlAccessType.class
    javax/xml/bind/annotation/XmlAccessorOrder.class
    javax/xml/bind/annotation/XmlAccessOrder.class
    javax/xml/bind/annotation/XmlAttachmentRef.class
    javax/xml/bind/annotation/XmlAnyElement.class
    javax/xml/bind/annotation/XmlSchemaTypes.class
    javax/xml/bind/annotation/XmlSchemaType$DEFAULT.class
    javax/xml/bind/annotation/XmlSchemaType.class
    javax/xml/bind/annotation/XmlRootElement.class
    javax/xml/bind/annotation/XmlAttribute.class
    javax/xml/bind/annotation/XmlMixed.class
    javax/xml/bind/annotation/XmlAccessorType.class

[EDIT] I think I fixed this with 629399a

@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 0m 52s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+0 🆗 codespell 0m 1s codespell was not available.
+0 🆗 shelldocs 0m 1s Shelldocs was not available.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
-1 ❌ test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
_ trunk Compile Tests _
+0 🆗 mvndep 15m 48s Maven dependency ordering for branch
+1 💚 mvninstall 28m 5s trunk passed
+1 💚 compile 25m 1s trunk passed with JDK Ubuntu-11.0.14.1+1-Ubuntu-0ubuntu1.20.04
+1 💚 compile 21m 31s trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07
+1 💚 mvnsite 28m 22s trunk passed
+1 💚 javadoc 8m 40s trunk passed with JDK Ubuntu-11.0.14.1+1-Ubuntu-0ubuntu1.20.04
+1 💚 javadoc 8m 23s trunk passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07
+1 💚 shadedclient 39m 57s branch has no errors when building and testing our client artifacts.
-0 ⚠️ patch 40m 14s Used diff version of patch file. Binary files and potentially other changes not applied. Please rebase and squash commits if necessary.
_ Patch Compile Tests _
+0 🆗 mvndep 0m 39s Maven dependency ordering for patch
+1 💚 mvninstall 36m 18s the patch passed
+1 💚 compile 24m 21s the patch passed with JDK Ubuntu-11.0.14.1+1-Ubuntu-0ubuntu1.20.04
+1 💚 javac 24m 21s the patch passed
+1 💚 compile 21m 29s the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07
+1 💚 javac 21m 29s the patch passed
+1 💚 blanks 0m 0s The patch has no blanks issues.
+1 💚 mvnsite 22m 21s the patch passed
+1 💚 shellcheck 0m 1s No new issues.
+1 💚 xml 0m 15s The patch has no ill-formed XML file.
+1 💚 javadoc 8m 23s the patch passed with JDK Ubuntu-11.0.14.1+1-Ubuntu-0ubuntu1.20.04
+1 💚 javadoc 8m 20s the patch passed with JDK Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07
+1 💚 shadedclient 40m 28s patch has no errors when building and testing our client artifacts.
_ Other Tests _
-1 ❌ unit 985m 5s /patch-unit-root.txt root in the patch passed.
+1 💚 asflicense 1m 28s The patch does not generate ASF License warnings.
1294m 13s
Reason Tests
Failed junit tests hadoop.hdfs.rbfbalance.TestRouterDistCpProcedure
Subsystem Report/Notes
Docker ClientAPI=1.41 ServerAPI=1.41 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-3988/17/artifact/out/Dockerfile
GITHUB PR #3988
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient codespell xml shellcheck shelldocs
uname Linux c842fad75d49 4.15.0-162-generic #170-Ubuntu SMP Mon Oct 18 11:38:05 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality dev-support/bin/hadoop.sh
git revision trunk / 629399a
Default Java Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07
Multi-JDK versions /usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.14.1+1-Ubuntu-0ubuntu1.20.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_312-8u312-b07-0ubuntu1~20.04-b07
Test Results https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-3988/17/testReport/
Max. process+thread count 2240 (vs. ulimit of 5500)
modules C: hadoop-project hadoop-common-project/hadoop-common hadoop-yarn-project/hadoop-yarn/hadoop-yarn-common hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-common hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-applicationhistoryservice hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-timelineservice-hbase-tests hadoop-yarn-project/hadoop-yarn/hadoop-yarn-applications/hadoop-yarn-applications-catalog/hadoop-yarn-applications-catalog-webapp hadoop-client-modules/hadoop-client hadoop-tools/hadoop-resourceestimator hadoop-client-modules/hadoop-client-minicluster . U: .
Console output https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-3988/17/console
versions git=2.25.1 maven=3.6.3 shellcheck=0.7.0
Powered by Apache Yetus 0.14.0-SNAPSHOT https://yetus.apache.org

This message was automatically generated.

@pjfanning
Copy link
Contributor Author

@aajisaka @steveloughran would either of you be able to take a look at this. The test that failed is one that seems to fail regularly anyway. I think I have fixed the other issues. This change would only be targeted at a future 3.4.0 release.

@steveloughran
Copy link
Contributor

this should involve those sub projects who use jersey, to make sure they are all happy.

if it was a random github artifact we'd be reluctant; the fact you are an asf member who could get code into our classpath anyway if you tried hard means this isn't an issue.

would probably need an incompatible entry in the release notes for any maven project excluding/overriding the old one

@pjfanning
Copy link
Contributor Author

@steveloughran one option would be for me to change the package name in my variant of jersey-json so that other projects that use hadoop and jersey 1 wouldn't be affected. From looking around a bit, many other projects that use hadoop don't use jersey themselves or use jersey 2 in some cases.

Copy link
Member

@aajisaka aajisaka left a comment

Choose a reason for hiding this comment

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

+1, thank you @pjfanning for your hard work and thank you @steveloughran for reviewing and starting the discussion on the mailing list.

I want to merge this tomorrow if there is no objection.

@pjfanning
Copy link
Contributor Author

@aajisaka thanks for reviewing this - if there are any issues post-merge, I will have a look

@aajisaka aajisaka merged commit 6318708 into apache:trunk Apr 28, 2022
@aajisaka
Copy link
Member

Merged into trunk. Thank you @pjfanning and @steveloughran

@aajisaka aajisaka changed the title [HADOOP-15983] use jersey-json that is built to use jackson2 HADOOP-15983. Use jersey-json that is built to use jackson2 Apr 28, 2022
GauthamBanasandra added a commit to GauthamBanasandra/hadoop that referenced this pull request May 1, 2022
@pjfanning pjfanning deleted the jersey-json branch October 20, 2022 01:16
pjfanning added a commit to pjfanning/hadoop that referenced this pull request Oct 20, 2022
)

Signed-off-by: Akira Ajisaka <aajisaka@apache.org>
steveloughran pushed a commit that referenced this pull request Oct 20, 2022
Moves from com.sun.jersey 1.19 to the artifact
com.github.pjfanning:jersey-json:1.20

This allows jackson 1 to be removed from the classpath.

Contains

* HADOOP-16908. Prune Jackson 1 from the codebase and restrict
   its usage for future
* HADOOP-18219. Fix shaded client test failure

These are needed for the HADOOP-15983 changes to build.

Contributed by PJ Fanning.
steveloughran pushed a commit to steveloughran/hadoop that referenced this pull request Oct 20, 2022
…3988)


Moves from com.sun.jersey 1.19 to the artifact
com.github.pjfanning:jersey-json:1.20

This allows jackson 1 to be removed from the classpath.

Contains

* HADOOP-16908. Prune Jackson 1 from the codebase and restrict
   its usage for future
* HADOOP-18219. Fix shaded client test failure

These are needed for the HADOOP-15983 changes to build.

Contributed by PJ Fanning.
steveloughran added a commit that referenced this pull request Oct 21, 2022
Moves from com.sun.jersey 1.19 to the artifact
com.github.pjfanning:jersey-json:1.20

This allows jackson 1 to be removed from the classpath.

Contains

* HADOOP-16908. Prune Jackson 1 from the codebase and restrict
   its usage for future
* HADOOP-18219. Fix shaded client test failure

These are needed for the HADOOP-15983 changes to build.

Contributed by PJ Fanning.
HarshitGupta11 pushed a commit to HarshitGupta11/hadoop that referenced this pull request Nov 28, 2022
)

Signed-off-by: Akira Ajisaka <aajisaka@apache.org>
prabhjyotsingh added a commit to acceldata-io/hadoop that referenced this pull request Feb 16, 2024
…core.

HADOOP-15983. Use jersey-json that is built to use jackson2 (apache#3988)
prabhjyotsingh added a commit to acceldata-io/hadoop that referenced this pull request Mar 26, 2024
…core.

HADOOP-15983. Use jersey-json that is built to use jackson2 (apache#3988)

(cherry picked from commit 1545e6c)
shubhluck added a commit to acceldata-io/hadoop that referenced this pull request May 2, 2024
* ODP-1095 CVE Fix jettison upgrade

(cherry picked from commit c4e0492)

* gson upgraded to 2.9.0

(cherry picked from commit 60d566d)

* ODP-1098: Upgrade jackson from 2.10.5 to 2.13.2.2

(cherry picked from commit 5eb67fd)

* ODP-1099 | Upgrade jetty version to 9.4.43.v20210629

(cherry picked from commit 1ac7946)

* ODP-1104 | snappy-java to 1.1.10.4, snappy-java to 1.1.10.4

(cherry picked from commit 56016fb)

* ODP-1103: HADOOP-11245. Update NFS gateway to use Netty4 (apache#2832)
netty - part1

(cherry picked from commit d94759b)

* ODP-1103: HADOOP-15327. Upgrade MR ShuffleHandler to use Netty4 apache#3259. Contributed by Szilard Nemeth.
netty - part2

(cherry picked from commit ee0f478)

# Conflicts:
#	hadoop-project/pom.xml

* ODP-1104 | update guava.version to 32.0.1-jre

(cherry picked from commit d45a329)

* YARN-9081. Update jackson from 1.9.13 to 2.x in hadoop-yarn-services-core.
HADOOP-15983. Use jersey-json that is built to use jackson2 (apache#3988)

(cherry picked from commit 1545e6c)

* ODP-1119-snakeyaml dependency: upgrade to v2.0

(cherry picked from commit 4d1c080)

* ODP-1098: add javax.ws.rs-api - 2.1.1 dependency
YARN-11558 - Fix dependency convergence error on hbase2 profile

(cherry picked from commit 5a9a65d)

* ODP-1104 | mvn dependency fix for snappy-java in hadoop-yarn-server-timelineservice-hbase-tests/pom.xml

(cherry picked from commit a41ad5c)

* TAG change 3.2.3.3.2.2.0-1095

(cherry picked from commit 8567f12)

* TAG change2 3.2.3.3.2.2.0-1095

(cherry picked from commit 61e898d)

* TAG change3 3.2.3.3.2.3.0-1095

(cherry picked from commit 58d1b91)

* TAG change4 3.2.3.3.2.2.0-2

(cherry picked from commit a813e1d)

* ODP-1095: set hadoop version as 3.2.3.3.2.2.0-1095

(cherry picked from commit d12de04)

* HADOOP-18950. Use shaded avro jar

(cherry picked from commit 509824a)

* ODP-1103|netty4 upgrade to 4.1.94

(cherry picked from commit 627108d)

* jettison dependency exclusion from hadoop-common

(cherry picked from commit 0da4db2)

* zookeeper release corrected to 3.2.2.0-1095

(cherry picked from commit 4a8bebf)

* excluded jackson-core-asl from hadoop-yarn-server-timelineservice-hbase-tests

* distribution management addition

* ODP-1103: remove netty jar from hadoop-yarn-server-timelineservice-hbase-tests

* HADOOP-18512. Upgrade woodstox-core to 5.4.0 for security fix

* fixed typo

* HADOOP-17033. Update commons-codec from 1.11 to 1.14

* Fixed maven pom across all pom

* Removing not required file

---------

Co-authored-by: manishsinghmowall <manishsingh@acceldata.io>
Co-authored-by: kravii <ravi@acceldata.io>
Co-authored-by: Prabhjyot Singh <prabhjyot@acceldata.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants