[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16604073#comment-16604073 ] yanghuafeng commented on HDFS-13836: Thanks for your tests. If there are other problems, please let me know. Thanks again. [~elgoiri] > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch, HDFS-13836.004.patch, HDFS-13836.005.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16593980#comment-16593980 ] Íñigo Goiri commented on HDFS-13836: The unit tests for both run with no issues: https://builds.apache.org/job/PreCommit-HDFS-Build/24887/testReport/org.apache.hadoop.hdfs.server.federation.store.driver/ https://builds.apache.org/job/PreCommit-HDFS-Build/24887/testReport/org.apache.hadoop.util.curator/TestZKCuratorManager/ It may make sense to run the YARN unit tests by hand just in case. +1 on [^HDFS-13836.005.patch]. > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch, HDFS-13836.004.patch, HDFS-13836.005.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16593192#comment-16593192 ] genericqa commented on HDFS-13836: -- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 16s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 2 new or modified test files. {color} | || || || || {color:brown} trunk Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 1m 57s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 19m 13s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 14m 45s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 3m 13s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 51s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 16m 47s{color} | {color:green} branch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 29s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 36s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 18s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 15s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 13m 51s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 13m 51s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 3m 14s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 46s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 8s{color} | {color:green} patch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 44s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 37s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 8m 27s{color} | {color:green} hadoop-common in the patch passed. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 15m 13s{color} | {color:green} hadoop-hdfs-rbf in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 38s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}120m 5s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:ba1ab08 | | JIRA Issue | HDFS-13836 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12937201/HDFS-13836.005.patch | | Optional Tests | dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 1979d1e6b846 3.13.0-139-generic #188-Ubuntu SMP Tue Jan 9 14:43:09 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / a4121c7 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_181 | | findbugs | v3.1.0-RC1 | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/24887/testReport/ | | Max. process+thread count | 1325 (vs. ulimit of 1) | | modules | C:
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16593157#comment-16593157 ] yanghuafeng commented on HDFS-13836: * Add null check in the ZkCuratorManager#getStringData() and add unit tests. *keep the unit test for StateStoreZooKeeperImpl. Please review again [~elgoiri] > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch, HDFS-13836.004.patch, HDFS-13836.005.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16592959#comment-16592959 ] Íñigo Goiri commented on HDFS-13836: I would try to move to the ZkCuratorManager and cover the issues for other users of the class instead of repeating the handling everywhere. > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch, HDFS-13836.004.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16592616#comment-16592616 ] yanghuafeng commented on HDFS-13836: I have found that it may be better to manage null value in the ZkCuratorManager.getString(). But the method getString() has throw an exception, including the NPE. In the StateStoreZooKeeperImpl.get(), we have caught the Exception but we just log the error not to delete the corrupted znode. In general we also in the catch clause judge the NPE and delete the anode. Now we just judge the null in advance. So I am not sure which is better. {code:java} try{ String path = getNodePath(znode, child); Stat stat = new Stat(); String data = zkManager.getStringData(path, stat); .. } catch (Exception e) { LOG.error("Cannot get data for {}: {}", child, e.getMessage()); } {code} > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch, HDFS-13836.004.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16591888#comment-16591888 ] Íñigo Goiri commented on HDFS-13836: Sorry for not catching this earlier, I think we should do the null managemenet in ZkCuratorManager; this is the one that should return null in this case. Regarding the logs, I was referring to the two cases where we now set corrupted=true but we don't log anything; should we add a new log statement? > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch, HDFS-13836.004.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16591144#comment-16591144 ] genericqa commented on HDFS-13836: -- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 40s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 1 new or modified test files. {color} | || || || || {color:brown} trunk Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 21m 45s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 23s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 17s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 28s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 1s{color} | {color:green} branch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 50s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 35s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 29s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 23s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 23s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 15s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 26s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 41s{color} | {color:green} patch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 52s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 29s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 16m 33s{color} | {color:green} hadoop-hdfs-rbf in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 22s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 68m 20s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:ba1ab08 | | JIRA Issue | HDFS-13836 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12936940/HDFS-13836.004.patch | | Optional Tests | dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 5a66655c2e0d 4.4.0-133-generic #159-Ubuntu SMP Fri Aug 10 07:31:43 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / 96c4575 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_181 | | findbugs | v3.1.0-RC1 | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/24864/testReport/ | | Max. process+thread count | 1505 (vs. ulimit of 1) | | modules | C: hadoop-hdfs-project/hadoop-hdfs-rbf U: hadoop-hdfs-project/hadoop-hdfs-rbf | | Console output | https://builds.apache.org/job/PreCommit-HDFS-Build/24864/console | | Powered by | Apache Yetus 0.8.0-SNAPSHOT http://yetus.apache.org | This message was automatically generated. > RBF: To handle the exception when the mounttable znode have null value. > --- > >
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16591092#comment-16591092 ] yanghuafeng commented on HDFS-13836: >From my side, it is essential to keep the logs. We can get the specific >information about the errors. {quote} For the asserts, I think we can use assertNull and assertNotNull. {quote} use assertNull and assertNotNull to replace assertTrue {quote} Should we generate the fake records in a higher level way? {quote} simple to use the "test" node {quote} We should do: String nodeName = StateStoreUtils.getRecordName(recordClass); {quote} done Please review again. [~elgoiri] > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch, HDFS-13836.004.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16590482#comment-16590482 ] Íñigo Goiri commented on HDFS-13836: [^HDFS-13836.003.patch] LGTM. I'm not sure if we should log some of the corrupted errors. [~hfyang20071], you found the error, do you think it is easy to track what happened now? My only concern with adding logs would be to be too verbose. Give it a thought, if this is fine, it's OK with me too. A couple other minor comments: * For the asserts, I think we can use {{assertNull}} and {{assertNotNull}}. * Should we generate the fake records in a higher level way? For example, instead of "0SLASH0node", use the mark and use the conversion to generate the underscores. > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16589683#comment-16589683 ] genericqa commented on HDFS-13836: -- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 33s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 1 new or modified test files. {color} | || || || || {color:brown} trunk Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 20m 40s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 31s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 20s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 31s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 10m 36s{color} | {color:green} branch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 50s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 31s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 29s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 24s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 24s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 14s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 27s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 46s{color} | {color:green} patch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 53s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 27s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 17m 17s{color} | {color:green} hadoop-hdfs-rbf in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 32s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 67m 40s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:ba1ab08 | | JIRA Issue | HDFS-13836 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12936752/HDFS-13836.003.patch | | Optional Tests | dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux d40f4335b63c 4.4.0-133-generic #159-Ubuntu SMP Fri Aug 10 07:31:43 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / b021249 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_181 | | findbugs | v3.1.0-RC1 | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/24845/testReport/ | | Max. process+thread count | 1343 (vs. ulimit of 1) | | modules | C: hadoop-hdfs-project/hadoop-hdfs-rbf U: hadoop-hdfs-project/hadoop-hdfs-rbf | | Console output | https://builds.apache.org/job/PreCommit-HDFS-Build/24845/console | | Powered by | Apache Yetus 0.8.0-SNAPSHOT http://yetus.apache.org | This message was automatically generated. > RBF: To handle the exception when the mounttable znode have null value. > --- > >
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16589640#comment-16589640 ] yanghuafeng commented on HDFS-13836: In my opinion, the above code would be more simple. To be more readable is also acceptable. Please review again, [~elgoiri] > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch, > HDFS-13836.003.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16588845#comment-16588845 ] Íñigo Goiri commented on HDFS-13836: Thanks [~hfyang20071] for [^HDFS-13836.002.patch]. I think we should make the code a little more readable. First we should check the bytes==null, then create the data, and then check there. Something like: {code} byte[] bytes = zkManager.getData(path, stat); if (bytes == null) { corrupted = true; } else { String data = new String(bytes, Charset.forName("UTF-8")); if (data == null || data.equals("")) { ... {code} > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16588486#comment-16588486 ] genericqa commented on HDFS-13836: -- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 24s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 1 new or modified test files. {color} | || || || || {color:brown} trunk Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 18m 13s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 28s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 19s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 30s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 56s{color} | {color:green} branch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 55s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 34s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 32s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 27s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 27s{color} | {color:green} the patch passed {color} | | {color:orange}-0{color} | {color:orange} checkstyle {color} | {color:orange} 0m 16s{color} | {color:orange} hadoop-hdfs-project/hadoop-hdfs-rbf: The patch generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0) {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 31s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 13m 15s{color} | {color:green} patch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 57s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 31s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 16m 30s{color} | {color:green} hadoop-hdfs-rbf in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 23s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 67m 43s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:ba1ab08 | | JIRA Issue | HDFS-13836 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12936583/HDFS-13836.002.patch | | Optional Tests | dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 3cc0e64edf58 3.13.0-153-generic #203-Ubuntu SMP Thu Jun 14 08:52:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / 8184739 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_181 | | findbugs | v3.1.0-RC1 | | checkstyle | https://builds.apache.org/job/PreCommit-HDFS-Build/24831/artifact/out/diff-checkstyle-hadoop-hdfs-project_hadoop-hdfs-rbf.txt | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/24831/testReport/ | | Max. process+thread count | 964 (vs. ulimit of 1) | | modules | C: hadoop-hdfs-project/hadoop-hdfs-rbf U: hadoop-hdfs-project/hadoop-hdfs-rbf | | Console output | https://builds.apache.org/job/PreCommit-HDFS-Build/24831/console | | Powered by | Apache Yetus
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16588475#comment-16588475 ] yanghuafeng commented on HDFS-13836: Add a unit test case, please review the code. [~elgoiri] > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch, HDFS-13836.002.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16586403#comment-16586403 ] genericqa commented on HDFS-13836: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 24s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:red}-1{color} | {color:red} test4tests {color} | {color:red} 0m 0s{color} | {color:red} 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. {color} | || || || || {color:brown} trunk Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 19m 59s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 29s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 19s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 30s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 52s{color} | {color:green} branch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 47s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 31s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 29s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 24s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 24s{color} | {color:green} the patch passed {color} | | {color:orange}-0{color} | {color:orange} checkstyle {color} | {color:orange} 0m 15s{color} | {color:orange} hadoop-hdfs-project/hadoop-hdfs-rbf: The patch generated 2 new + 0 unchanged - 0 fixed = 2 total (was 0) {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 27s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 12m 36s{color} | {color:green} patch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 0m 54s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 30s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 16m 10s{color} | {color:green} hadoop-hdfs-rbf in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 24s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 67m 54s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:ba1ab08 | | JIRA Issue | HDFS-13836 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12936264/HDFS-13836.001.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 821ed29d2338 3.13.0-153-generic #203-Ubuntu SMP Thu Jun 14 08:52:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / 65e7469 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_181 | | findbugs | v3.1.0-RC1 | | checkstyle | https://builds.apache.org/job/PreCommit-HDFS-Build/24819/artifact/out/diff-checkstyle-hadoop-hdfs-project_hadoop-hdfs-rbf.txt | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/24819/testReport/ | | Max. process+thread count | 953 (vs. ulimit of 1) | | modules | C: hadoop-hdfs-project/hadoop-hdfs-rbf U: hadoop-hdfs-project/hadoop-hdfs-rbf | | Console
[jira] [Commented] (HDFS-13836) RBF: To handle the exception when the mounttable znode have null value.
[ https://issues.apache.org/jira/browse/HDFS-13836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16586342#comment-16586342 ] Íñigo Goiri commented on HDFS-13836: Thanks [~hfyang20071], could you add a unit test? > RBF: To handle the exception when the mounttable znode have null value. > --- > > Key: HDFS-13836 > URL: https://issues.apache.org/jira/browse/HDFS-13836 > Project: Hadoop HDFS > Issue Type: Bug > Components: federation, hdfs >Affects Versions: 3.1.0 >Reporter: yanghuafeng >Assignee: yanghuafeng >Priority: Major > Fix For: 2.9.0, 3.0.0, 3.1.0, 3.2.0 > > Attachments: HDFS-13836.001.patch > > > When we are adding the mounttable entry, the router sever is terminated. > Some error messages show in log, as follow: > 2018-08-20 14:18:32,404 ERROR > org.apache.hadoop.hdfs.server.federation.store.driver.impl.StateStoreZooKeeperImpl: > Cannot get data for 0SLASH0testzk: null. > The reason is that router server have created the znode but not to set data > before being terminated. But the method zkManager.getStringData(path, stat) > will throw NPE if the path has null value in the StateStoreZooKeeperImpl, > leading to fail in adding the same mounttable entry and deleting the existing > znode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org