Skip to content

TEZ-4600: Secret managers in Tez should respect the algorithm set by hadoop - #393

Merged
ayushtkn merged 5 commits into
apache:masterfrom
abstractdog:TEZ-4600
Mar 4, 2025
Merged

TEZ-4600: Secret managers in Tez should respect the algorithm set by hadoop#393
ayushtkn merged 5 commits into
apache:masterfrom
abstractdog:TEZ-4600

Conversation

@abstractdog

@abstractdogabstractdog commented Feb 19, 2025

Copy link
Copy Markdown
Contributor

This PR makes the JobTokenSecretManager in Tez able to use the algorithm specified in:

hadoop.security.secret-manager.key-generator.algorithm

An additional comment was needed to upgrade to hadoop 3.5.0-SNAPSHOT to compile against the changes of YARN-11738. This PR can be merged once Tez upgraded its hadoop.version to 3.5.0 (which needs a hadoop release first :) )

testing done: turned on SSL shuffle on a cluster having YARN-11738, DAG failed with exceptions mentioned on jira, then with the fix DAG ran successfully (as ShuffleScheduler + ShuffleManager used the non-default algorithm configured)

@tez-yetus

This comment was marked as outdated.

@abstractdogabstractdog changed the title TEZ-4600: JobTokenSecretManager should respect the algorithm set by hadoop TEZ-4600: Secret managers in Tez should respect the algorithm set by hadoopFeb 25, 2025
} catch (NoSuchAlgorithmException nsa) {
throw new IllegalArgumentException("Can't find " + algorithm + " algorithm.", nsa);
} catch (InvalidKeyException ike) {
throw new IllegalArgumentException("Invalid key to HMAC computation", ike);

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Do we want to hardcode HMAC over here? InvalidKeyException can be thrown for other algorithms as well, right?

Copy link
Copy Markdown
ContributorAuthor

Choose a reason for hiding this comment

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

oh, right, this is a leftover from the default HMAC-era

@tez-yetus

This comment was marked as outdated.

@tez-yetus

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec0m 38sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 1sNo case conflicting files found.
+1 💚@author0m 0sThe patch does not contain any @author tags.
+1 💚test4tests0m 0sThe patch appears to include 10 new or modified test files.
_ master Compile Tests _
+0 🆗mvndep2m 51sMaven dependency ordering for branch
+1 💚mvninstall9m 44smaster passed
+1 💚compile5m 45smaster passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚compile5m 24smaster passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚checkstyle3m 58smaster passed
+1 💚javadoc4m 7smaster passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javadoc3m 50smaster passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+0 🆗spotbugs5m 47sUsed deprecated FindBugs config; considering switching to SpotBugs.
+1 💚findbugs11m 29smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 57sMaven dependency ordering for patch
+1 💚mvninstall7m 11sthe patch passed
+1 💚compile6m 6sthe patch passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javac6m 6sthe patch passed
+1 💚compile5m 39sthe patch passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚javac5m 39sthe patch passed
+1 💚checkstyle0m 28stez-api: The patch generated 0 new + 41 unchanged - 1 fixed = 41 total (was 42)
+1 💚checkstyle0m 31sThe patch passed checkstyle in tez-runtime-library
+1 💚checkstyle0m 25sThe patch passed checkstyle in tez-mapreduce
+1 💚checkstyle0m 35sThe patch passed checkstyle in tez-dag
+1 💚checkstyle0m 24sThe patch passed checkstyle in tez-ext-service-tests
+1 💚checkstyle0m 23sThe patch passed checkstyle in tez-aux-services
+1 💚checkstyle0m 58sroot: The patch generated 0 new + 329 unchanged - 1 fixed = 329 total (was 330)
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚xml0m 2sThe patch has no ill-formed XML file.
+1 💚javadoc3m 56sthe patch passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javadoc3m 52sthe patch passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚findbugs12m 23sthe patch passed
_ Other Tests _
+1 💚unit0m 45stez-api in the patch passed.
+1 💚unit0m 36stez-runtime-library in the patch passed.
+1 💚unit0m 34stez-mapreduce in the patch passed.
+1 💚unit0m 41stez-dag in the patch passed.
+1 💚unit0m 35stez-ext-service-tests in the patch passed.
+1 💚unit0m 33stez-aux-services in the patch passed.
+1 💚unit3m 17sroot in the patch passed.
+1 💚asflicense2m 38sThe patch does not generate ASF License warnings.
105m 9s
SubsystemReport/Notes
DockerClientAPI=1.48 ServerAPI=1.48 base: https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/3/artifact/out/Dockerfile
GITHUB PR#393
Optional Testsdupname asflicense javac javadoc unit xml compile spotbugs findbugs checkstyle
unameLinux 64af6b038ae0 5.15.0-130-generic #140-Ubuntu SMP Wed Dec 18 17:59:53 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/tez.sh
git revisionmaster / 82b3476
Default JavaPrivate Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
Multi-JDK versions/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
Test Resultshttps://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/3/testReport/
Max. process+thread count101 (vs. ulimit of 5500)
modulesC: tez-api tez-runtime-library tez-mapreduce tez-dag tez-ext-service-tests tez-plugins/tez-aux-services . U: .
Console outputhttps://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/3/console
versionsgit=2.34.1 maven=3.6.3 findbugs=3.0.1
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@abstractdog

Copy link
Copy Markdown
ContributorAuthor

tests passed
let me know @ayushtkn if this can be approved
we cannot merge until Hadoop 3.5.0, created TEZ-4606 for blocking this jira

@ayushtknayushtkn left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM

@tez-yetus

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec25m 6sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 1sNo case conflicting files found.
+1 💚@author0m 0sThe patch does not contain any @author tags.
+1 💚test4tests0m 0sThe patch appears to include 12 new or modified test files.
_ master Compile Tests _
+0 🆗mvndep2m 0sMaven dependency ordering for branch
+1 💚mvninstall10m 19smaster passed
+1 💚compile3m 34smaster passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚compile3m 20smaster passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚checkstyle2m 48smaster passed
+1 💚javadoc2m 57smaster passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javadoc2m 43smaster passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+0 🆗spotbugs0m 46sUsed deprecated FindBugs config; considering switching to SpotBugs.
+1 💚findbugs5m 57smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 10sMaven dependency ordering for patch
+1 💚mvninstall2m 18sthe patch passed
+1 💚compile2m 19sthe patch passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javac2m 19sthe patch passed
+1 💚compile2m 6sthe patch passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚javac2m 6sthe patch passed
-0 ⚠️checkstyle0m 13stez-api: The patch generated 1 new + 41 unchanged - 1 fixed = 42 total (was 42)
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚javadoc1m 32sthe patch passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javadoc1m 29sthe patch passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚findbugs5m 23sthe patch passed
_ Other Tests _
+1 💚unit2m 16stez-api in the patch passed.
+1 💚unit5m 47stez-runtime-library in the patch passed.
+1 💚unit1m 23stez-mapreduce in the patch passed.
+1 💚unit5m 5stez-dag in the patch passed.
+1 💚unit4m 32stez-ext-service-tests in the patch passed.
+1 💚unit2m 50stez-aux-services in the patch passed.
+1 💚asflicense0m 55sThe patch does not generate ASF License warnings.
100m 56s
SubsystemReport/Notes
DockerClientAPI=1.48 ServerAPI=1.48 base: https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/4/artifact/out/Dockerfile
GITHUB PR#393
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs checkstyle compile
unameLinux a4dd1a21cd29 5.15.0-131-generic #141-Ubuntu SMP Fri Jan 10 21:18:28 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/tez.sh
git revisionmaster / 82b3476
Default JavaPrivate Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
Multi-JDK versions/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
checkstylehttps://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/4/artifact/out/diff-checkstyle-tez-api.txt
Test Resultshttps://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/4/testReport/
Max. process+thread count2100 (vs. ulimit of 5500)
modulesC: tez-api tez-runtime-library tez-mapreduce tez-dag tez-ext-service-tests tez-plugins/tez-aux-services U: .
Console outputhttps://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/4/console
versionsgit=2.34.1 maven=3.6.3 findbugs=3.0.1
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@abstractdog

Copy link
Copy Markdown
ContributorAuthor

changed hadoop enums to strings until TEZ-4607
merging this soon assuming that @ayushtkn 's approval still holds

@ayushtkn

Copy link
Copy Markdown
Member

there is a checkstyle warning that has shown up for the unused import, we need to fix it before we merge

@abstractdog

Copy link
Copy Markdown
ContributorAuthor

there is a checkstyle warning that has shown up for the unused import, we need to fix it before we merge

makes sense, I just pushed a commit to remove it

@tez-yetus

Copy link
Copy Markdown

🎊 +1 overall

VoteSubsystemRuntimeComment
+0 🆗reexec25m 44sDocker mode activated.
_ Prechecks _
+1 💚dupname0m 0sNo case conflicting files found.
+1 💚@author0m 0sThe patch does not contain any @author tags.
+1 💚test4tests0m 0sThe patch appears to include 12 new or modified test files.
_ master Compile Tests _
+0 🆗mvndep2m 5sMaven dependency ordering for branch
+1 💚mvninstall9m 45smaster passed
+1 💚compile3m 30smaster passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚compile3m 13smaster passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚checkstyle2m 43smaster passed
+1 💚javadoc2m 39smaster passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javadoc2m 29smaster passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+0 🆗spotbugs0m 41sUsed deprecated FindBugs config; considering switching to SpotBugs.
+1 💚findbugs5m 29smaster passed
_ Patch Compile Tests _
+0 🆗mvndep0m 9sMaven dependency ordering for patch
+1 💚mvninstall2m 11sthe patch passed
+1 💚compile2m 7sthe patch passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javac2m 7sthe patch passed
+1 💚compile1m 56sthe patch passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚javac1m 56sthe patch passed
+1 💚checkstyle0m 12stez-api: The patch generated 0 new + 41 unchanged - 1 fixed = 41 total (was 42)
+1 💚checkstyle0m 16sThe patch passed checkstyle in tez-runtime-library
+1 💚checkstyle0m 10sThe patch passed checkstyle in tez-mapreduce
+1 💚checkstyle0m 19sThe patch passed checkstyle in tez-dag
+1 💚checkstyle0m 10sThe patch passed checkstyle in tez-ext-service-tests
+1 💚checkstyle0m 10sThe patch passed checkstyle in tez-aux-services
+1 💚whitespace0m 0sThe patch has no whitespace issues.
+1 💚javadoc1m 22sthe patch passed with JDK Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04
+1 💚javadoc1m 21sthe patch passed with JDK Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
+1 💚findbugs5m 1sthe patch passed
_ Other Tests _
+1 💚unit2m 11stez-api in the patch passed.
+1 💚unit6m 17stez-runtime-library in the patch passed.
+1 💚unit1m 21stez-mapreduce in the patch passed.
+1 💚unit5m 1stez-dag in the patch passed.
+1 💚unit4m 43stez-ext-service-tests in the patch passed.
+1 💚unit2m 51stez-aux-services in the patch passed.
+1 💚asflicense0m 53sThe patch does not generate ASF License warnings.
98m 44s
SubsystemReport/Notes
DockerClientAPI=1.48 ServerAPI=1.48 base: https://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/5/artifact/out/Dockerfile
GITHUB PR#393
Optional Testsdupname asflicense javac javadoc unit spotbugs findbugs checkstyle compile
unameLinux c3870ff10f60 5.15.0-131-generic #141-Ubuntu SMP Fri Jan 10 21:18:28 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Build toolmaven
Personalitypersonality/tez.sh
git revisionmaster / 82b3476
Default JavaPrivate Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
Multi-JDK versions/usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.26+4-post-Ubuntu-1ubuntu122.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_442-8u442-b06us1-0ubuntu122.04-b06
Test Resultshttps://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/5/testReport/
Max. process+thread count1534 (vs. ulimit of 5500)
modulesC: tez-api tez-runtime-library tez-mapreduce tez-dag tez-ext-service-tests tez-plugins/tez-aux-services U: .
Console outputhttps://ci-hadoop.apache.org/job/tez-multibranch/job/PR-393/5/console
versionsgit=2.34.1 maven=3.6.3 findbugs=3.0.1
Powered byApache Yetus 0.12.0 https://yetus.apache.org

This message was automatically generated.

@ayushtkn
ayushtkn merged commit 3aa2aa1 into apache:masterMar 4, 2025
Sign up for freeto 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.

3 participants

@abstractdog@tez-yetus@ayushtkn