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-16640. WASB: Override getCanonicalServiceName() to return URI #1621

Closed
wants to merge 2 commits into from

Conversation

DadanielZ
Copy link
Contributor

Add a configuration to override getCanonicalServiceName() to return URI of WASB FS.

@gkanade
Copy link

gkanade commented Oct 8, 2019

+1

@hadoop-yetus
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
0 reexec 40 Docker mode activated.
_ Prechecks _
+1 dupname 0 No case conflicting files found.
+1 @author 0 The patch does not contain any @author tags.
+1 test4tests 0 The patch appears to include 1 new or modified test files.
_ trunk Compile Tests _
+1 mvninstall 1066 trunk passed
+1 compile 32 trunk passed
+1 checkstyle 26 trunk passed
+1 mvnsite 36 trunk passed
+1 shadedclient 789 branch has no errors when building and testing our client artifacts.
+1 javadoc 28 trunk passed
0 spotbugs 52 Used deprecated FindBugs config; considering switching to SpotBugs.
+1 findbugs 49 trunk passed
_ Patch Compile Tests _
+1 mvninstall 29 the patch passed
+1 compile 24 the patch passed
+1 javac 24 the patch passed
+1 checkstyle 18 hadoop-tools/hadoop-azure: The patch generated 0 new + 27 unchanged - 1 fixed = 27 total (was 28)
+1 mvnsite 27 the patch passed
+1 whitespace 0 The patch has no whitespace issues.
+1 shadedclient 781 patch has no errors when building and testing our client artifacts.
+1 javadoc 24 the patch passed
+1 findbugs 54 the patch passed
_ Other Tests _
+1 unit 82 hadoop-azure in the patch passed.
+1 asflicense 33 The patch does not generate ASF License warnings.
3230
Subsystem Report/Notes
Docker Client=19.03.3 Server=19.03.3 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/1/artifact/out/Dockerfile
GITHUB PR #1621
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle
uname Linux 27a988754752 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / 72ae371
Default Java 1.8.0_222
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/1/testReport/
Max. process+thread count 440 (vs. ulimit of 5500)
modules C: hadoop-tools/hadoop-azure U: hadoop-tools/hadoop-azure
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/1/console
versions git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@DadanielZ
Copy link
Contributor Author

WASB tests passed:
Tests run: 245, Failures: 0, Errors: 0, Skipped: 11
Tests run: 635, Failures: 0, Errors: 0, Skipped: 66
Tests run: 3, Failures: 0, Errors: 0, Skipped: 0

@steveloughran
Copy link
Contributor

If you return a non-null value from this method, you are telling callers that you will will be issuing a delegation token, that is getDelegationToken() is non-null

Is that your intent? if so then you don't need an extra option for it -just ask whatever issues DTs for the FS if it has a DT or is willing to issue one.

@DadanielZ
Copy link
Contributor Author

@steveloughran Here is the issue reported by wasb customer:
HBase calls getCanonicalServiceName() to check if two FS are the same, but because the current WASB rely on the default implementation of getCanonicalServiceName() so it will return "ip:port", which failed to catch the case that two accounts are on same stamp.
https://github.com/apache/hbase/blob/10180e232ebf886c9577d77eb91ce64b51564dfc/hbase-server/src/main/java/org/apache/hadoop/hbase/util/FSHDFSUtils.java#L117
So we would like to add one config to bypass this issue.

BTW, from the documentation, this API should only be used by token cache but not others, so it seem HBase should not rely on this call to do the check?

@DadanielZ
Copy link
Contributor Author

@steveloughran does it look good to you?

});

// clear fs cache
FileSystem.closeAll();
Copy link
Contributor

Choose a reason for hiding this comment

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

you don't need to do that , just call FileSystem.newInstance(defaultURI, conf), remembering to close the new FS afterwards

@steveloughran
Copy link
Contributor

small change to the tests proposed, but LGTM.

I do worry that a lot of the abfs config is hidden in the javadocs. Someone should fix that with more user docs. I know its not that relevant for managed cluster deployments (HD/I etc), but for people talking to abfs externally, it really matters.

@DadanielZ
Copy link
Contributor Author

Sure, I've added HADOOP-16659 for work on adding the missing docs for the abfs/wasb config.

@hadoop-yetus
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
0 reexec 1791 Docker mode activated.
_ Prechecks _
+1 dupname 1 No case conflicting files found.
+1 @author 0 The patch does not contain any @author tags.
+1 test4tests 0 The patch appears to include 1 new or modified test files.
_ trunk Compile Tests _
+1 mvninstall 1178 trunk passed
+1 compile 32 trunk passed
+1 checkstyle 25 trunk passed
+1 mvnsite 35 trunk passed
+1 shadedclient 787 branch has no errors when building and testing our client artifacts.
+1 javadoc 26 trunk passed
0 spotbugs 53 Used deprecated FindBugs config; considering switching to SpotBugs.
+1 findbugs 51 trunk passed
_ Patch Compile Tests _
+1 mvninstall 28 the patch passed
+1 compile 25 the patch passed
+1 javac 25 the patch passed
+1 checkstyle 17 hadoop-tools/hadoop-azure: The patch generated 0 new + 27 unchanged - 1 fixed = 27 total (was 28)
+1 mvnsite 29 the patch passed
+1 whitespace 0 The patch has no whitespace issues.
+1 shadedclient 795 patch has no errors when building and testing our client artifacts.
+1 javadoc 23 the patch passed
+1 findbugs 56 the patch passed
_ Other Tests _
+1 unit 82 hadoop-azure in the patch passed.
+1 asflicense 32 The patch does not generate ASF License warnings.
5099
Subsystem Report/Notes
Docker Client=19.03.3 Server=19.03.3 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/2/artifact/out/Dockerfile
GITHUB PR #1621
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle
uname Linux e323f868947c 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / 375224e
Default Java 1.8.0_222
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/2/testReport/
Max. process+thread count 446 (vs. ulimit of 5500)
modules C: hadoop-tools/hadoop-azure U: hadoop-tools/hadoop-azure
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/2/console
versions git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@hadoop-yetus
Copy link

🎊 +1 overall

Vote Subsystem Runtime Comment
0 reexec 1436 Docker mode activated.
_ Prechecks _
+1 dupname 0 No case conflicting files found.
+1 @author 0 The patch does not contain any @author tags.
+1 test4tests 0 The patch appears to include 1 new or modified test files.
_ trunk Compile Tests _
+1 mvninstall 1135 trunk passed
+1 compile 31 trunk passed
+1 checkstyle 24 trunk passed
+1 mvnsite 34 trunk passed
+1 shadedclient 831 branch has no errors when building and testing our client artifacts.
+1 javadoc 26 trunk passed
0 spotbugs 52 Used deprecated FindBugs config; considering switching to SpotBugs.
+1 findbugs 49 trunk passed
_ Patch Compile Tests _
+1 mvninstall 28 the patch passed
+1 compile 24 the patch passed
+1 javac 24 the patch passed
+1 checkstyle 18 hadoop-tools/hadoop-azure: The patch generated 0 new + 27 unchanged - 1 fixed = 27 total (was 28)
+1 mvnsite 28 the patch passed
+1 whitespace 0 The patch has no whitespace issues.
+1 shadedclient 796 patch has no errors when building and testing our client artifacts.
+1 javadoc 25 the patch passed
+1 findbugs 54 the patch passed
_ Other Tests _
+1 unit 82 hadoop-azure in the patch passed.
+1 asflicense 33 The patch does not generate ASF License warnings.
4755
Subsystem Report/Notes
Docker Client=19.03.3 Server=19.03.3 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/3/artifact/out/Dockerfile
GITHUB PR #1621
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle
uname Linux 176f5dba5da7 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
Build tool maven
Personality personality/hadoop.sh
git revision trunk / 375224e
Default Java 1.8.0_222
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/3/testReport/
Max. process+thread count 412 (vs. ulimit of 5500)
modules C: hadoop-tools/hadoop-azure U: hadoop-tools/hadoop-azure
Console output https://builds.apache.org/job/hadoop-multibranch/job/PR-1621/3/console
versions git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

@DadanielZ
Copy link
Contributor Author

committed, closing it.

@DadanielZ DadanielZ closed this Oct 16, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
4 participants