Skip to content

Conversation

@anoopsjohn
Copy link
Contributor

…ang.IllegalArgumentException instead of IOE which causes HBase RS to get aborted.

…ang.IllegalArgumentException instead of IOE which causes HBase RS to get aborted.
@liuml07 liuml07 requested review from liuml07 and steveloughran June 13, 2020 19:00
@liuml07 liuml07 added the fs/azure changes related to azure; submitter must declare test endpoint label Jun 13, 2020
Copy link

@ramkrish86 ramkrish86 left a comment

Choose a reason for hiding this comment

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

Non binding.

Copy link
Member

@liuml07 liuml07 left a comment

Choose a reason for hiding this comment

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

+1

nit: you may want to fix the checkstyle warnings, @anoopsjohn

Will keep it open this week so @steveloughran may take a look.

Copy link
Member

@ayushtkn ayushtkn left a comment

Choose a reason for hiding this comment

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

+1

Copy link
Contributor

@steveloughran steveloughran left a comment

Choose a reason for hiding this comment

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

suggested some changes. Also add a try-with-resources implicit close() wrapping a failing close(); that's where abfs + gzip was having problems


import org.apache.hadoop.fs.StreamCapabilities;
import org.apache.hadoop.fs.Syncable;
import org.slf4j.Logger;
Copy link
Contributor

Choose a reason for hiding this comment

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

put in an import block just above the org.apache one. I know a lot of classes don't do that -but that is because the move from o.a.commons.logging to SLF4J was done with 'sed'

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Done.
org.apache.hadoop.classification.InterfaceAudience was wrongly placed. Corrected it now.

Copy link
Contributor

Choose a reason for hiding this comment

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

sorry, i meant "org.slf4j to go into a block above the org.apache one", below the java. one...its where we like keep the non-apache, non-static imports

…ang.IllegalArgumentException instead of IOE which causes HBase RS to get aborted.
@liuml07
Copy link
Member

liuml07 commented Jun 21, 2020

javadoc error is not related but checkstyle warning is related?

…ang.IllegalArgumentException instead of IOE which causes HBase RS to get aborted.
@anoopsjohn
Copy link
Contributor Author

anoopsjohn commented Jun 21, 2020

javadoc error is not related but checkstyle warning is related?

Checkstyle is reported in test class
./hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/TestSyncableDataOutputStream.java:44: boolean flushThrowIOE = false;:13: Variable 'flushThrowIOE' must be private and have accessor methods. [VisibilityModifier]

So checkstyle applicable for Test classes also in Hadoop? This is my first patch here and so not really aware. Anyways I have pushed a new commit with private modifier. This was a static inner class in Test class so easy thing.

@apache apache deleted a comment from hadoop-yetus Jun 22, 2020
Copy link
Contributor

@steveloughran steveloughran left a comment

Choose a reason for hiding this comment

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

code is good, just those imports. Imports are a PITA as they create so much merge conflict.

in new code, current layout is

java.*
javax.*

all non static but org apache

org.apache.*

import static

``

existing code: keep the diff to a minimum, no reorder, etc, just to keep cherrypicking and merging of multiple patches viable

other than that: all good to go


import org.apache.hadoop.fs.StreamCapabilities;
import org.apache.hadoop.fs.Syncable;
import org.slf4j.Logger;
Copy link
Contributor

Choose a reason for hiding this comment

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

sorry, i meant "org.slf4j to go into a block above the org.apache one", below the java. one...its where we like keep the non-apache, non-static imports

import java.io.OutputStream;

import org.apache.hadoop.test.LambdaTestUtils;
import org.junit.Test;
Copy link
Contributor

Choose a reason for hiding this comment

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

again, org.junit to a (new) "non org.apache imports' block

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks Steve for explaining..
Sorry I did the organize import at eclipse level and just used the same import formatter what using for hbase.
Did the 2 import order changes as u suggested and pushed.

…ang.IllegalArgumentException instead of IOE which causes HBase RS to get aborted.
Copy link
Contributor

@steveloughran steveloughran left a comment

Choose a reason for hiding this comment

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

call me fussy for being strict about comments but for all the places where we have "false" merge conflict it's there. I wish we had spark's 'reject all patches with the wrong settings' check -but it is too late now. instead we do it by hand, and have to expect it to decay. What we can do is start right and hope to retain

please look at the previous discusssion and the ordering I discussed there.


import org.apache.hadoop.fs.StreamCapabilities;
import org.apache.hadoop.fs.Syncable;
import org.apache.hadoop.classification.InterfaceAudience;
Copy link
Contributor

Choose a reason for hiding this comment

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

we are getting so close here. Now move this up to L28.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

You mean move to L27 so that org.slf4j and org.apche are single block?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

sorry Steve am not getting fully.
So you say move this entire org.apache block to L27 (So that new new line between org.slf4j and org.apache block)
Or u want to move import org.apache.hadoop.classification.InterfaceAudience; (In L30) to L28 so that within org.apache block things are properly imported in order and still keep this org.apache and org.slf as 2 blocks.

@liuml07
Copy link
Member

liuml07 commented Jul 6, 2020

This is still open. @steveloughran do you have a chance to look at the latest code and also question @anoopsjohn has? Thanks,

@anoopsjohn
Copy link
Contributor Author

Sorry I got confused with the order of imports that we follow in Hadoop.. Do we have a code formatter for Eclipse which specify the import order?
Based on the line number what Steve mentioned, I believe he mean this
"Or u want to move import org.apache.hadoop.classification.InterfaceAudience; (In L30) to L28 so that within org.apache block things are properly imported in order and still keep this org.apache and org.slf as 2 blocks"

Let me anyways change that in my PR.

anoopsjohn and others added 2 commits July 7, 2020 10:50
…ang.IllegalArgumentException instead of IOE which causes HBase RS to get aborted.
swapped the final two import blocks
@apache apache deleted a comment from hadoop-yetus Jul 14, 2020
@apache apache deleted a comment from hadoop-yetus Jul 14, 2020
@apache apache deleted a comment from hadoop-yetus Jul 14, 2020
@apache apache deleted a comment from hadoop-yetus Jul 14, 2020
@steveloughran steveloughran merged commit 380e0f4 into apache:trunk Jul 14, 2020
@steveloughran
Copy link
Contributor

merged to trunk; rebuilding branch 3.3 with the patch cherrypicked.. not quite set up to run wasb tests there so just validating that the patch went in OK

@hadoop-yetus
Copy link

💔 -1 overall

Vote Subsystem Runtime Comment
+0 🆗 reexec 0m 33s Docker mode activated.
_ Prechecks _
+1 💚 dupname 0m 0s No case conflicting files found.
+1 💚 @author 0m 0s The patch does not contain any @author tags.
+1 💚 test4tests 0m 0s The patch appears to include 1 new or modified test files.
_ trunk Compile Tests _
+1 💚 mvninstall 19m 21s trunk passed
+1 💚 compile 0m 37s trunk passed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04
+1 💚 compile 0m 32s trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09
+1 💚 checkstyle 0m 25s trunk passed
+1 💚 mvnsite 0m 36s trunk passed
+1 💚 shadedclient 14m 59s branch has no errors when building and testing our client artifacts.
-1 ❌ javadoc 0m 29s hadoop-azure in trunk failed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.
+1 💚 javadoc 0m 27s trunk passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09
+0 🆗 spotbugs 0m 55s Used deprecated FindBugs config; considering switching to SpotBugs.
+1 💚 findbugs 0m 53s trunk passed
_ Patch Compile Tests _
+1 💚 mvninstall 0m 29s the patch passed
+1 💚 compile 0m 29s the patch passed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04
+1 💚 javac 0m 29s the patch passed
+1 💚 compile 0m 25s the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09
+1 💚 javac 0m 25s the patch passed
+1 💚 checkstyle 0m 17s the patch passed
+1 💚 mvnsite 0m 27s the patch passed
+1 💚 whitespace 0m 0s The patch has no whitespace issues.
+1 💚 shadedclient 13m 41s patch has no errors when building and testing our client artifacts.
-1 ❌ javadoc 0m 25s hadoop-azure in the patch failed with JDK Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.
+1 💚 javadoc 0m 23s the patch passed with JDK Private Build-1.8.0_252-8u252-b09-1~18.04-b09
+1 💚 findbugs 0m 55s the patch passed
_ Other Tests _
+1 💚 unit 1m 28s hadoop-azure in the patch passed.
+1 💚 asflicense 0m 32s The patch does not generate ASF License warnings.
60m 33s
Subsystem Report/Notes
Docker ClientAPI=1.40 ServerAPI=1.40 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-2073/6/artifact/out/Dockerfile
GITHUB PR #2073
Optional Tests dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle
uname Linux b147b6dfa804 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 / 48f9011
Default Java Private Build-1.8.0_252-8u252-b09-1~18.04-b09
Multi-JDK versions /usr/lib/jvm/java-11-openjdk-amd64:Ubuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04 /usr/lib/jvm/java-8-openjdk-amd64:Private Build-1.8.0_252-8u252-b09-1~18.04-b09
javadoc https://builds.apache.org/job/hadoop-multibranch/job/PR-2073/6/artifact/out/branch-javadoc-hadoop-tools_hadoop-azure-jdkUbuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.txt
javadoc https://builds.apache.org/job/hadoop-multibranch/job/PR-2073/6/artifact/out/patch-javadoc-hadoop-tools_hadoop-azure-jdkUbuntu-11.0.7+10-post-Ubuntu-2ubuntu218.04.txt
Test Results https://builds.apache.org/job/hadoop-multibranch/job/PR-2073/6/testReport/
Max. process+thread count 414 (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-2073/6/console
versions git=2.17.1 maven=3.6.0 findbugs=3.1.0-RC1
Powered by Apache Yetus 0.12.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

Labels

fs/azure changes related to azure; submitter must declare test endpoint

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants