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-19331. Hadoop OSS Connector process optimization #7314

Open
wants to merge 2 commits into
base: trunk
Choose a base branch
from

Conversation

zhouaoe
Copy link

@zhouaoe zhouaoe commented Jan 22, 2025

Description of PR

Optimize the process by reducing some extra QPS.
1 Create: Reduce one HEAD operation for coverage operations.
2 Rename: Reduce an additional PUT operation. During the rename process, when determining whether to create a virtual empty directory, we check if the parent directory exists afterward. There is a bug in the original OSS code that leads to it creating the directory every time.
3 Delete: Reduce one HEAD operation when creating a virtual parent directory. For the operation of creating a parent directory, use OSS server features to create it only when the target does not exist.(([https://www.alibabacloud.com/help/en/oss/user-guide/simple-upload?spm=a2c63.p38356.help-menu-31815.d_2_3_1_0.13644b78AT3Hyj)] image

How was this patch tested?

1 Add new unit tests (UT)
TestAliyunOSSFileSystemCreateFileListV1
TestAliyunOSSFileSystemCreateFileListV2
TestAliyunOSSFileSystemRenameFile
2 Modify relevant integration tests
TestAliyunOSSBlockOutputStream

3 test integration tests and unit tests are executed
mvn test -pl hadoop-tools/hadoop-aliyun

image

hadoop@96c5b859c556:~$ mvn test -Dtest=org.apache.hadoop.fs.aliyun.oss.TestAliyunOSSFileSystemCreateFileListV1 -pl hadoop-tools/hadoop-aliyun

image

hadoop@96c5b859c556:~$ mvn test -Dtest=org.apache.hadoop.fs.aliyun.oss.TestAliyunOSSFileSystemCreateFileListV2 -pl hadoop-tools/hadoop-aliyun

image

hadoop@96c5b859c556:~$ mvn test -Dtest=org.apache.hadoop.fs.aliyun.oss.TestAliyunOSSFileSystemDeleteFile -pl hadoop-tools/hadoop-aliyun

image

hadoop@96c5b859c556:~$ mvn test -Dtest=org.apache.hadoop.fs.aliyun.oss.TestAliyunOSSFileSystemRenameFile -pl hadoop-tools/hadoop-aliyun1s

image

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?

@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Logfile Comment
+0 🆗 reexec 6m 56s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 1s No case conflicting files found.
+0 🆗 codespell 0m 0s codespell was not available.
+0 🆗 detsecrets 0m 0s detect-secrets was not available.
+0 🆗 xmllint 0m 0s xmllint was not available.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 8 new or modified test files.
_ trunk Compile Tests _
+1 💚 mvninstall 22m 9s trunk passed
+1 💚 compile 0m 19s trunk passed with JDK Ubuntu-11.0.25+9-post-Ubuntu-1ubuntu120.04
+1 💚 compile 0m 17s trunk passed with JDK Private Build-1.8.0_432-8u432-gaus1-0ubuntu220.04-ga
+1 💚 checkstyle 0m 19s trunk passed
+1 💚 mvnsite 0m 18s trunk passed
+1 💚 javadoc 0m 24s trunk passed with JDK Ubuntu-11.0.25+9-post-Ubuntu-1ubuntu120.04
+1 💚 javadoc 0m 18s trunk passed with JDK Private Build-1.8.0_432-8u432-gaus1-0ubuntu220.04-ga
+1 💚 spotbugs 0m 32s trunk passed
+1 💚 shadedclient 19m 27s branch has no errors when building and testing our client artifacts.
_ Patch Compile Tests _
+1 💚 mvninstall 0m 12s the patch passed
+1 💚 compile 0m 12s the patch passed with JDK Ubuntu-11.0.25+9-post-Ubuntu-1ubuntu120.04
+1 💚 javac 0m 12s the patch passed
+1 💚 compile 0m 13s the patch passed with JDK Private Build-1.8.0_432-8u432-gaus1-0ubuntu220.04-ga
+1 💚 javac 0m 13s the patch passed
+1 💚 blanks 0m 0s The patch has no blanks issues.
-0 ⚠️ checkstyle 0m 10s /results-checkstyle-hadoop-tools_hadoop-aliyun.txt hadoop-tools/hadoop-aliyun: The patch generated 116 new + 0 unchanged - 0 fixed = 116 total (was 0)
+1 💚 mvnsite 0m 15s the patch passed
-1 ❌ javadoc 0m 14s /results-javadoc-javadoc-hadoop-tools_hadoop-aliyun-jdkUbuntu-11.0.25+9-post-Ubuntu-1ubuntu120.04.txt hadoop-tools_hadoop-aliyun-jdkUbuntu-11.0.25+9-post-Ubuntu-1ubuntu120.04 with JDK Ubuntu-11.0.25+9-post-Ubuntu-1ubuntu120.04 generated 2 new + 0 unchanged - 0 fixed = 2 total (was 0)
-1 ❌ javadoc 0m 12s /results-javadoc-javadoc-hadoop-tools_hadoop-aliyun-jdkPrivateBuild-1.8.0_432-8u432-gaus1-0ubuntu220.04-ga.txt hadoop-tools_hadoop-aliyun-jdkPrivateBuild-1.8.0_432-8u432-gaus1-0ubuntu220.04-ga with JDK Private Build-1.8.0_432-8u432-gaus1-0ubuntu220.04-ga generated 2 new + 0 unchanged - 0 fixed = 2 total (was 0)
+1 💚 spotbugs 0m 31s the patch passed
+1 💚 shadedclient 19m 37s patch has no errors when building and testing our client artifacts.
_ Other Tests _
+1 💚 unit 0m 14s hadoop-aliyun in the patch passed.
+1 💚 asflicense 0m 23s The patch does not generate ASF License warnings.
74m 29s
Subsystem Report/Notes
Docker ClientAPI=1.47 ServerAPI=1.47 base: https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-7314/1/artifact/out/Dockerfile
GITHUB PR #7314
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient codespell detsecrets xmllint spotbugs checkstyle
uname Linux 1e469b0e02ff 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 tool maven
Personality dev-support/bin/hadoop.sh
git revision trunk / 39da142
Default Java Private Build-1.8.0_432-8u432-gaus1-0ubuntu220.04-ga
Multi-JDK versions /usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.25+9-post-Ubuntu-1ubuntu120.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_432-8u432-gaus1-0ubuntu220.04-ga
Test Results https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-7314/1/testReport/
Max. process+thread count 560 (vs. ulimit of 5500)
modules C: hadoop-tools/hadoop-aliyun U: hadoop-tools/hadoop-aliyun
Console output https://ci-hadoop.apache.org/job/hadoop-multibranch/job/PR-7314/1/console
versions git=2.25.1 maven=3.6.3 spotbugs=4.2.2
Powered by Apache Yetus 0.14.0 https://yetus.apache.org

This message was automatically generated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants