[jira] [Comment Edited] (HDFS-13212) RBF: Fix router location cache issue
[ https://issues.apache.org/jira/browse/HDFS-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390881#comment-16390881 ] Weiwei Wu edited comment on HDFS-13212 at 3/8/18 7:54 AM: -- [~elgoiri], Thanks for your review.Update a new patch. was (Author: wuweiwei): [~elgoiri], Thanks for you review.Update a new patch. > RBF: Fix router location cache issue > > > Key: HDFS-13212 > URL: https://issues.apache.org/jira/browse/HDFS-13212 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: federation, hdfs >Reporter: Weiwei Wu >Priority: Major > Attachments: HDFS-13212-001.patch, HDFS-13212-002.patch, > HDFS-13212-003.patch, HDFS-13212-004.patch, HDFS-13212-005.patch, > HDFS-13212-006.patch, HDFS-13212-007.patch > > > The MountTableResolver refreshEntries function have a bug when add a new > mount table entry which already have location cache. The old location cache > will never be invalid until this mount point change again. > Need to invalid the location cache when add the mount table entries. -- 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-13212) RBF: Fix router location cache issue
[ https://issues.apache.org/jira/browse/HDFS-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390881#comment-16390881 ] Weiwei Wu commented on HDFS-13212: -- [~elgoiri], Thanks for you review.Update a new patch. > RBF: Fix router location cache issue > > > Key: HDFS-13212 > URL: https://issues.apache.org/jira/browse/HDFS-13212 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: federation, hdfs >Reporter: Weiwei Wu >Priority: Major > Attachments: HDFS-13212-001.patch, HDFS-13212-002.patch, > HDFS-13212-003.patch, HDFS-13212-004.patch, HDFS-13212-005.patch, > HDFS-13212-006.patch, HDFS-13212-007.patch > > > The MountTableResolver refreshEntries function have a bug when add a new > mount table entry which already have location cache. The old location cache > will never be invalid until this mount point change again. > Need to invalid the location cache when add the mount table entries. -- 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] [Updated] (HDFS-13212) RBF: Fix router location cache issue
[ https://issues.apache.org/jira/browse/HDFS-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Weiwei Wu updated HDFS-13212: - Attachment: HDFS-13212-007.patch > RBF: Fix router location cache issue > > > Key: HDFS-13212 > URL: https://issues.apache.org/jira/browse/HDFS-13212 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: federation, hdfs >Reporter: Weiwei Wu >Priority: Major > Attachments: HDFS-13212-001.patch, HDFS-13212-002.patch, > HDFS-13212-003.patch, HDFS-13212-004.patch, HDFS-13212-005.patch, > HDFS-13212-006.patch, HDFS-13212-007.patch > > > The MountTableResolver refreshEntries function have a bug when add a new > mount table entry which already have location cache. The old location cache > will never be invalid until this mount point change again. > Need to invalid the location cache when add the mount table entries. -- 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-13247) FileInputStream not closed when read the checksum header from the meta file
[ https://issues.apache.org/jira/browse/HDFS-13247?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390867#comment-16390867 ] John Zhuge commented on HDFS-13247: --- Please check out [try-with-resources|https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html]. > FileInputStream not closed when read the checksum header from the meta file > --- > > Key: HDFS-13247 > URL: https://issues.apache.org/jira/browse/HDFS-13247 > Project: Hadoop HDFS > Issue Type: Bug > Components: datanode >Affects Versions: 3.2.0 >Reporter: liaoyuxiangqin >Priority: Major > > When i read the computeChecksum() of FsDatasetImpl class in datanode, I found > the following code not closed fis after read the checksum header from the > meta file, According to the comments of function readDataChecksum() we must > close inputStream by the caller. Thanks. > {code:java|title=FsDatasetImpl.java|borderStyle=solid} > DataChecksum checksum; > try (FileInputStream fis = > srcReplica.getFileIoProvider().getFileInputStream( > srcReplica.getVolume(), srcMeta)) { > checksum = BlockMetadataHeader.readDataChecksum( > fis, DFSUtilClient.getIoFileBufferSize(conf), srcMeta); > } > final byte[] data = new byte[1 << 16]; > final byte[] crcs = new byte[checksum.getChecksumSize(data.length)]; > {code} -- 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] [Created] (HDFS-13247) FileInputStream not closed when read the checksum header from the meta file
liaoyuxiangqin created HDFS-13247: - Summary: FileInputStream not closed when read the checksum header from the meta file Key: HDFS-13247 URL: https://issues.apache.org/jira/browse/HDFS-13247 Project: Hadoop HDFS Issue Type: Bug Components: datanode Affects Versions: 3.2.0 Reporter: liaoyuxiangqin When i read the computeChecksum() of FsDatasetImpl class in datanode, I found the following code not closed fis after read the checksum header from the meta file, According to the comments of function readDataChecksum() we must close inputStream by the caller. Thanks. {code:java|title=FsDatasetImpl.java|borderStyle=solid} DataChecksum checksum; try (FileInputStream fis = srcReplica.getFileIoProvider().getFileInputStream( srcReplica.getVolume(), srcMeta)) { checksum = BlockMetadataHeader.readDataChecksum( fis, DFSUtilClient.getIoFileBufferSize(conf), srcMeta); } final byte[] data = new byte[1 << 16]; final byte[] crcs = new byte[checksum.getChecksumSize(data.length)]; {code} -- 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-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390861#comment-16390861 ] genericqa commented on HDFS-13230: -- | (/) *{color:green}+1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 19s{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 32s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 56s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 52s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 3s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 58s{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 3s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 58s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 59s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 56s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 56s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 47s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 56s{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 2s{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 11s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 54s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green}118m 59s{color} | {color:green} hadoop-hdfs 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}176m 23s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-13230 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12913515/HDFS-13230.001.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 4c4ae9b66532 3.13.0-137-generic #186-Ubuntu SMP Mon Dec 4 19:09:19 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / 583f459 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_151 | | findbugs | v3.1.0-RC1 | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/23344/testReport/ | | Max. process+thread count | 3287 (vs. ulimit of 1) | | modules | C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs | | Console output | https://builds.apache.org/job/PreCommit-HDFS-Build/23344/console | | Powered by | Apache Yetus 0.8.0-SNAPSHOT http://yetus.apache.org | This message was automatically generated. > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > -
[jira] [Updated] (HDFS-13176) WebHdfs file path gets truncated when having semicolon (;) inside
[ https://issues.apache.org/jira/browse/HDFS-13176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Zsolt Venczel updated HDFS-13176: - Attachment: HDFS-13176-branch-2.03.patch > WebHdfs file path gets truncated when having semicolon (;) inside > - > > Key: HDFS-13176 > URL: https://issues.apache.org/jira/browse/HDFS-13176 > Project: Hadoop HDFS > Issue Type: Bug > Components: webhdfs >Affects Versions: 3.0.0 >Reporter: Zsolt Venczel >Assignee: Zsolt Venczel >Priority: Major > Attachments: HDFS-13176-branch-2.01.patch, > HDFS-13176-branch-2.03.patch, HDFS-13176-branch-2.03.patch, > HDFS-13176.01.patch, HDFS-13176.02.patch, > TestWebHdfsUrl.testWebHdfsSpecialCharacterFile.patch > > > Find attached a patch having a test case that tries to reproduce the problem. -- 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] [Updated] (HDFS-13176) WebHdfs file path gets truncated when having semicolon (;) inside
[ https://issues.apache.org/jira/browse/HDFS-13176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Zsolt Venczel updated HDFS-13176: - Status: Patch Available (was: In Progress) > WebHdfs file path gets truncated when having semicolon (;) inside > - > > Key: HDFS-13176 > URL: https://issues.apache.org/jira/browse/HDFS-13176 > Project: Hadoop HDFS > Issue Type: Bug > Components: webhdfs >Affects Versions: 3.0.0 >Reporter: Zsolt Venczel >Assignee: Zsolt Venczel >Priority: Major > Attachments: HDFS-13176-branch-2.01.patch, > HDFS-13176-branch-2.03.patch, HDFS-13176.01.patch, HDFS-13176.02.patch, > TestWebHdfsUrl.testWebHdfsSpecialCharacterFile.patch > > > Find attached a patch having a test case that tries to reproduce the problem. -- 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] [Updated] (HDFS-13176) WebHdfs file path gets truncated when having semicolon (;) inside
[ https://issues.apache.org/jira/browse/HDFS-13176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Zsolt Venczel updated HDFS-13176: - Status: In Progress (was: Patch Available) > WebHdfs file path gets truncated when having semicolon (;) inside > - > > Key: HDFS-13176 > URL: https://issues.apache.org/jira/browse/HDFS-13176 > Project: Hadoop HDFS > Issue Type: Bug > Components: webhdfs >Affects Versions: 3.0.0 >Reporter: Zsolt Venczel >Assignee: Zsolt Venczel >Priority: Major > Attachments: HDFS-13176-branch-2.01.patch, > HDFS-13176-branch-2.03.patch, HDFS-13176.01.patch, HDFS-13176.02.patch, > TestWebHdfsUrl.testWebHdfsSpecialCharacterFile.patch > > > Find attached a patch having a test case that tries to reproduce the problem. -- 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-13240) RBF: Update some inaccurate document descriptions
[ https://issues.apache.org/jira/browse/HDFS-13240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390849#comment-16390849 ] Yiqun Lin commented on HDFS-13240: -- Attach the patch to address all. > RBF: Update some inaccurate document descriptions > - > > Key: HDFS-13240 > URL: https://issues.apache.org/jira/browse/HDFS-13240 > Project: Hadoop HDFS > Issue Type: Sub-task >Affects Versions: 3.0.0 >Reporter: Yiqun Lin >Assignee: Yiqun Lin >Priority: Minor > Attachments: HDFS-13240.001.patch > > > In RBF doc, there are some places not describing accurately > (https://issues.apache.org/jira/browse/HDFS-13214?focusedCommentId=16389026&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16389026). > This will mislead users sometimes. -- 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] [Updated] (HDFS-13240) RBF: Update some inaccurate document descriptions
[ https://issues.apache.org/jira/browse/HDFS-13240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Yiqun Lin updated HDFS-13240: - Status: Patch Available (was: Open) > RBF: Update some inaccurate document descriptions > - > > Key: HDFS-13240 > URL: https://issues.apache.org/jira/browse/HDFS-13240 > Project: Hadoop HDFS > Issue Type: Sub-task >Affects Versions: 3.0.0 >Reporter: Yiqun Lin >Assignee: Yiqun Lin >Priority: Minor > Attachments: HDFS-13240.001.patch > > > In RBF doc, there are some places not describing accurately > (https://issues.apache.org/jira/browse/HDFS-13214?focusedCommentId=16389026&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16389026). > This will mislead users sometimes. -- 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] [Updated] (HDFS-13240) RBF: Update some inaccurate document descriptions
[ https://issues.apache.org/jira/browse/HDFS-13240?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Yiqun Lin updated HDFS-13240: - Attachment: HDFS-13240.001.patch > RBF: Update some inaccurate document descriptions > - > > Key: HDFS-13240 > URL: https://issues.apache.org/jira/browse/HDFS-13240 > Project: Hadoop HDFS > Issue Type: Sub-task >Affects Versions: 3.0.0 >Reporter: Yiqun Lin >Assignee: Yiqun Lin >Priority: Minor > Attachments: HDFS-13240.001.patch > > > In RBF doc, there are some places not describing accurately > (https://issues.apache.org/jira/browse/HDFS-13214?focusedCommentId=16389026&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16389026). > This will mislead users sometimes. -- 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-13233) RBF: getMountPoint doesn't return the correct mount point of the mount table
[ https://issues.apache.org/jira/browse/HDFS-13233?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390833#comment-16390833 ] wangzhiyuan commented on HDFS-13233: Hi [~elgoiri], there is a little difference between patch 2 and patch 3. Patch 2: return path.charAt(parent.length()) == '/' ; Patch 3: return path.charAt(parent.length()) == '/' || parent.equals("/"); All the tests of TestMountTableResolver passed But there is still one test case in TestRouterQuota failed I will check it > RBF: getMountPoint doesn't return the correct mount point of the mount table > > > Key: HDFS-13233 > URL: https://issues.apache.org/jira/browse/HDFS-13233 > Project: Hadoop HDFS > Issue Type: Bug > Components: hdfs >Affects Versions: 3.2.0 >Reporter: wangzhiyuan >Assignee: wangzhiyuan >Priority: Major > Attachments: HDFS-13233.001.patch, HDFS-13233.002.patch, > HDFS-13233.003.patch > > > Method MountTableResolver->getMountPoint will traverse mount table and return > the first mount point which the input path starts with, but the condition is > not sufficient. > Suppose the mount point table contains: "/user" "/user/test" "/user/test1", > if the input path is "/user/test111", the return mount point is > "/user/test1", but the correct one should be "/user". -- 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-13212) RBF: Fix router location cache issue
[ https://issues.apache.org/jira/browse/HDFS-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390828#comment-16390828 ] Íñigo Goiri commented on HDFS-13212: Thanks [~wuweiwei] for [^HDFS-13212-006.patch]. I would check also for the second entry you add in line 473. Then, I don't think 483 is needed given that you have 485. Other than that LGTM. > RBF: Fix router location cache issue > > > Key: HDFS-13212 > URL: https://issues.apache.org/jira/browse/HDFS-13212 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: federation, hdfs >Reporter: Weiwei Wu >Priority: Major > Attachments: HDFS-13212-001.patch, HDFS-13212-002.patch, > HDFS-13212-003.patch, HDFS-13212-004.patch, HDFS-13212-005.patch, > HDFS-13212-006.patch > > > The MountTableResolver refreshEntries function have a bug when add a new > mount table entry which already have location cache. The old location cache > will never be invalid until this mount point change again. > Need to invalid the location cache when add the mount table entries. -- 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-13212) RBF: Fix router location cache issue
[ https://issues.apache.org/jira/browse/HDFS-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390820#comment-16390820 ] genericqa commented on HDFS-13212: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 18s{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 47s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 58s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 53s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 14s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 12m 41s{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 11s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 1s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 11s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 18s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 18s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 52s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 4s{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 49s{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 17s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 56s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red} 95m 30s{color} | {color:red} hadoop-hdfs in the patch failed. {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}152m 53s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hdfs.TestReadStripedFileWithMissingBlocks | | | hadoop.hdfs.web.TestWebHDFS | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-13212 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12913514/HDFS-13212-006.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 5bb9cdcdcbf1 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 / 583f459 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_151 | | findbugs | v3.1.0-RC1 | | unit | https://builds.apache.org/job/PreCommit-HDFS-Build/23343/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/23343/testReport/ | | Max. process+thread count | 4302 (vs. ulimit of 1) | | modules | C: hadoop-hdfs-project/hadoop-hdfs U: hadoop-hdfs-project/hadoop-hdfs | | Console output | https://builds.apache.org/job/PreCommit-HDFS-Build/23343/console | | Powered by | Apache Yet
[jira] [Comment Edited] (HDFS-13212) RBF: Fix router location cache issue
[ https://issues.apache.org/jira/browse/HDFS-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16389833#comment-16389833 ] Íñigo Goiri edited comment on HDFS-13212 at 3/8/18 6:33 AM: Thanks [~wuweiwei] for the detailed explanation, that makes sense. In the unit test, we may want to add an assert to check that we get the default location for: {code} // Add the default location to location cache mountTable.getDestinationForPath("/testlocationcache"); {code} Other than that, in [^HDFS-13212-005.patch], there are a couple check style issues with the line length. Then {{TestRouterQuota}} is failing now, it actually might be related; do you mind checking? was (Author: elgoiri): Thanks [~wuweiwei] for the detailed explanation, that makes sense. In the unit test, we may want to add an assert to check that we get the default location for: {code} // Add the default location to location cache mountTable.getDestinationForPath("/testlocationcache"); {code} Other than that, in [^HDFS-13212-005.patch], there are a couple check style issues with the line length. Then {TestRouterQuota} is failing now, it actually might be related; do you mind checking? > RBF: Fix router location cache issue > > > Key: HDFS-13212 > URL: https://issues.apache.org/jira/browse/HDFS-13212 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: federation, hdfs >Reporter: Weiwei Wu >Priority: Major > Attachments: HDFS-13212-001.patch, HDFS-13212-002.patch, > HDFS-13212-003.patch, HDFS-13212-004.patch, HDFS-13212-005.patch, > HDFS-13212-006.patch > > > The MountTableResolver refreshEntries function have a bug when add a new > mount table entry which already have location cache. The old location cache > will never be invalid until this mount point change again. > Need to invalid the location cache when add the mount table entries. -- 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] [Updated] (HDFS-13246) FileInputStream redundant closes in readReplicasFromCache
[ https://issues.apache.org/jira/browse/HDFS-13246?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] liaoyuxiangqin updated HDFS-13246: -- Attachment: HDFS-13246.001.patch > FileInputStream redundant closes in readReplicasFromCache > -- > > Key: HDFS-13246 > URL: https://issues.apache.org/jira/browse/HDFS-13246 > Project: Hadoop HDFS > Issue Type: Improvement > Components: datanode >Affects Versions: 3.2.0 >Reporter: liaoyuxiangqin >Priority: Major > Attachments: HDFS-13246.001.patch > > > When i read the readReplicasFromCache() of BlockPoolSlice class in datanode, > I found the following code closes fileinputstream redundant, I think > IOUtils.closeStream(inputStream) in finally code block could guarantee close > the inputStream correctly, So the > inputStream.close() can remove. Thanks. > > {code:java|title=BlockPoolSlice.java|borderStyle=solid} > FileInputStream inputStream = null; > try { > inputStream = fileIoProvider.getFileInputStream(volume, replicaFile); > BlockListAsLongs blocksList = > BlockListAsLongs.readFrom(inputStream, maxDataLength); > if (blocksList == null) { > return false; > } > for (BlockReportReplica replica : blocksList) { > switch (replica.getState()) { > case FINALIZED: > addReplicaToReplicasMap(replica, tmpReplicaMap, > lazyWriteReplicaMap, true); > break; > case RUR: > case RBW: > case RWR: > addReplicaToReplicasMap(replica, tmpReplicaMap, > lazyWriteReplicaMap, false); > break; > default: > break; > } > } > inputStream.close(); > // Now it is safe to add the replica into volumeMap > // In case of any exception during parsing this cache file, fall back > // to scan all the files on disk. > for (Iterator iter = > tmpReplicaMap.replicas(bpid).iterator(); iter.hasNext(); ) { > ReplicaInfo info = iter.next(); > // We use a lightweight GSet to store replicaInfo, we need to remove > // it from one GSet before adding to another. > iter.remove(); > volumeMap.add(bpid, info); > } > LOG.info("Successfully read replica from cache file : " > + replicaFile.getPath()); > return true; > } catch (Exception e) { > // Any exception we need to revert back to read from disk > // Log the error and return false > LOG.info("Exception occurred while reading the replicas cache file: " > + replicaFile.getPath(), e ); > return false; > } > finally { > if (!fileIoProvider.delete(volume, replicaFile)) { > LOG.info("Failed to delete replica cache file: " + > replicaFile.getPath()); > } > // close the inputStream > IOUtils.closeStream(inputStream); > } > {code} -- 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] [Updated] (HDFS-13246) FileInputStream redundant closes in readReplicasFromCache
[ https://issues.apache.org/jira/browse/HDFS-13246?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] liaoyuxiangqin updated HDFS-13246: -- Status: Patch Available (was: Open) > FileInputStream redundant closes in readReplicasFromCache > -- > > Key: HDFS-13246 > URL: https://issues.apache.org/jira/browse/HDFS-13246 > Project: Hadoop HDFS > Issue Type: Improvement > Components: datanode >Affects Versions: 3.2.0 >Reporter: liaoyuxiangqin >Priority: Major > Attachments: HDFS-13246.001.patch > > > When i read the readReplicasFromCache() of BlockPoolSlice class in datanode, > I found the following code closes fileinputstream redundant, I think > IOUtils.closeStream(inputStream) in finally code block could guarantee close > the inputStream correctly, So the > inputStream.close() can remove. Thanks. > > {code:java|title=BlockPoolSlice.java|borderStyle=solid} > FileInputStream inputStream = null; > try { > inputStream = fileIoProvider.getFileInputStream(volume, replicaFile); > BlockListAsLongs blocksList = > BlockListAsLongs.readFrom(inputStream, maxDataLength); > if (blocksList == null) { > return false; > } > for (BlockReportReplica replica : blocksList) { > switch (replica.getState()) { > case FINALIZED: > addReplicaToReplicasMap(replica, tmpReplicaMap, > lazyWriteReplicaMap, true); > break; > case RUR: > case RBW: > case RWR: > addReplicaToReplicasMap(replica, tmpReplicaMap, > lazyWriteReplicaMap, false); > break; > default: > break; > } > } > inputStream.close(); > // Now it is safe to add the replica into volumeMap > // In case of any exception during parsing this cache file, fall back > // to scan all the files on disk. > for (Iterator iter = > tmpReplicaMap.replicas(bpid).iterator(); iter.hasNext(); ) { > ReplicaInfo info = iter.next(); > // We use a lightweight GSet to store replicaInfo, we need to remove > // it from one GSet before adding to another. > iter.remove(); > volumeMap.add(bpid, info); > } > LOG.info("Successfully read replica from cache file : " > + replicaFile.getPath()); > return true; > } catch (Exception e) { > // Any exception we need to revert back to read from disk > // Log the error and return false > LOG.info("Exception occurred while reading the replicas cache file: " > + replicaFile.getPath(), e ); > return false; > } > finally { > if (!fileIoProvider.delete(volume, replicaFile)) { > LOG.info("Failed to delete replica cache file: " + > replicaFile.getPath()); > } > // close the inputStream > IOUtils.closeStream(inputStream); > } > {code} -- 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-11600) Refactor TestDFSStripedOutputStreamWithFailure test classes
[ https://issues.apache.org/jira/browse/HDFS-11600?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390803#comment-16390803 ] SammiChen commented on HDFS-11600: -- Hi [~rakeshr], do you have time to help review the patch? > Refactor TestDFSStripedOutputStreamWithFailure test classes > --- > > Key: HDFS-11600 > URL: https://issues.apache.org/jira/browse/HDFS-11600 > Project: Hadoop HDFS > Issue Type: Improvement > Components: test >Affects Versions: 3.0.0-alpha2 >Reporter: Andrew Wang >Priority: Minor > Attachments: HDFS-11600-1.patch, HDFS-11600.002.patch, > HDFS-11600.003.patch, HDFS-11600.004.patch > > > TestDFSStripedOutputStreamWithFailure has a great number of subclasses. The > tests are parameterized based on the name of these subclasses. > Seems like we could parameterize these tests with JUnit and then not need all > these separate test classes. > Another note, the tests will randomly return instead of running the test. > Using {{Assume}} instead would make it more clear in the test output that > these tests were skipped. -- 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] [Created] (HDFS-13246) FileInputStream redundant closes in readReplicasFromCache
liaoyuxiangqin created HDFS-13246: - Summary: FileInputStream redundant closes in readReplicasFromCache Key: HDFS-13246 URL: https://issues.apache.org/jira/browse/HDFS-13246 Project: Hadoop HDFS Issue Type: Improvement Components: datanode Affects Versions: 3.2.0 Reporter: liaoyuxiangqin When i read the readReplicasFromCache() of BlockPoolSlice class in datanode, I found the following code closes fileinputstream redundant, I think IOUtils.closeStream(inputStream) in finally code block could guarantee close the inputStream correctly, So the inputStream.close() can remove. Thanks. {code:java|title=BlockPoolSlice.java|borderStyle=solid} FileInputStream inputStream = null; try { inputStream = fileIoProvider.getFileInputStream(volume, replicaFile); BlockListAsLongs blocksList = BlockListAsLongs.readFrom(inputStream, maxDataLength); if (blocksList == null) { return false; } for (BlockReportReplica replica : blocksList) { switch (replica.getState()) { case FINALIZED: addReplicaToReplicasMap(replica, tmpReplicaMap, lazyWriteReplicaMap, true); break; case RUR: case RBW: case RWR: addReplicaToReplicasMap(replica, tmpReplicaMap, lazyWriteReplicaMap, false); break; default: break; } } inputStream.close(); // Now it is safe to add the replica into volumeMap // In case of any exception during parsing this cache file, fall back // to scan all the files on disk. for (Iterator iter = tmpReplicaMap.replicas(bpid).iterator(); iter.hasNext(); ) { ReplicaInfo info = iter.next(); // We use a lightweight GSet to store replicaInfo, we need to remove // it from one GSet before adding to another. iter.remove(); volumeMap.add(bpid, info); } LOG.info("Successfully read replica from cache file : " + replicaFile.getPath()); return true; } catch (Exception e) { // Any exception we need to revert back to read from disk // Log the error and return false LOG.info("Exception occurred while reading the replicas cache file: " + replicaFile.getPath(), e ); return false; } finally { if (!fileIoProvider.delete(volume, replicaFile)) { LOG.info("Failed to delete replica cache file: " + replicaFile.getPath()); } // close the inputStream IOUtils.closeStream(inputStream); } {code} -- 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-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390789#comment-16390789 ] genericqa commented on HDFS-13056: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 18s{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 6 new or modified test files. {color} | || || || || {color:brown} trunk Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 1m 38s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 17m 4s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 13m 18s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 3m 15s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 3m 5s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 17m 9s{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} 5m 13s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 2m 34s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 17s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 2m 23s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 12m 9s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} cc {color} | {color:green} 12m 8s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 12m 8s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 3m 17s{color} | {color:green} root: The patch generated 0 new + 610 unchanged - 1 fixed = 610 total (was 611) {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 3m 4s{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} xml {color} | {color:green} 0m 1s{color} | {color:green} The patch has no ill-formed XML file. {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 10m 17s{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} 6m 20s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 2m 39s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 8m 33s{color} | {color:green} hadoop-common in the patch passed. {color} | | {color:green}+1{color} | {color:green} unit {color} | {color:green} 1m 35s{color} | {color:green} hadoop-hdfs-client in the patch passed. {color} | | {color:red}-1{color} | {color:red} unit {color} | {color:red}100m 37s{color} | {color:red} hadoop-hdfs in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 48s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}212m 7s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hdfs.server.blockmanagement.TestUnderReplicatedBlocks | | | hadoop.hdfs.server.datanode.fsdataset.impl.TestLazyPersistReplicaRecovery | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-13056 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attach
[jira] [Commented] (HDFS-12999) When reach the end of the block group, it may not need to flush all the data packets(flushAllInternals) twice.
[ https://issues.apache.org/jira/browse/HDFS-12999?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390786#comment-16390786 ] lufei commented on HDFS-12999: -- It was my mistake to set this issue's fix version. [~leftnoteasy],thanks for remove it. > When reach the end of the block group, it may not need to flush all the data > packets(flushAllInternals) twice. > --- > > Key: HDFS-12999 > URL: https://issues.apache.org/jira/browse/HDFS-12999 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.0.0-beta1, 3.1.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Attachments: HDFS-12999.001.patch, HDFS-12999.002.patch > > > In order to make the process simplification. It's no need to flush all the > data packets(flushAllInternals) twice,when reach the end of the block group. -- 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-13243) Get CorruptBlock because of calling close and sync in same time
[ https://issues.apache.org/jira/browse/HDFS-13243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390772#comment-16390772 ] Zephyr Guo commented on HDFS-13243: --- Attach v2 patch to fix NoSuchMethodException > Get CorruptBlock because of calling close and sync in same time > --- > > Key: HDFS-13243 > URL: https://issues.apache.org/jira/browse/HDFS-13243 > Project: Hadoop HDFS > Issue Type: Bug > Components: namenode >Affects Versions: 2.7.2, 3.2.0 >Reporter: Zephyr Guo >Priority: Critical > Fix For: 3.2.0 > > Attachments: HDFS-13243-v1.patch, HDFS-13243-v2.patch > > > HDFS File might get broken because of corrupt block(s) that could be produced > by calling close and sync in the same time. > When calling close was not successful, UCBlock status would change to > COMMITTED, and if a sync request gets popped from queue and processed, sync > operation would change the last block length. > After that, DataNode would report all received block to NameNode, and will > check Block length of all COMMITTED Blocks. But the block length was already > different between recorded in NameNode memory and reported by DataNode, and > consequently, the last block is marked as corruptted because of inconsistent > length. > > {panel:title=Log in my hdfs} > 2018-03-05 04:05:39,261 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* > allocate blk_1085498930_11758129\{UCState=UNDER_CONSTRUCTION, > truncateBlock=null, primaryNodeIndex=-1, > replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], > > ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], > > ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} > for > /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 > 2018-03-05 04:05:39,760 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* > fsync: > /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 > for DFSClient_NONMAPREDUCE_1077513762_1 > 2018-03-05 04:05:39,761 INFO > org.apache.hadoop.hdfs.server.namenode.FSNamesystem: BLOCK* > blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, > primaryNodeIndex=-1, > replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], > > ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], > > ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} > is not COMPLETE (ucState = COMMITTED, replication# = 0 < minimum = 2) in > file > /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 > 2018-03-05 04:05:39,761 INFO BlockStateChange: BLOCK* addStoredBlock: > blockMap updated: 10.0.0.220:50010 is added to > blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, > primaryNodeIndex=-1, > replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], > > ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], > > ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} > size 2054413 > 2018-03-05 04:05:39,761 INFO BlockStateChange: BLOCK > NameSystem.addToCorruptReplicasMap: blk_1085498930 added as corrupt on > 10.0.0.219:50010 by > hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com/10.0.0.219 because block is > COMMITTED and reported length 2054413 does not match length in block map > 141232 > 2018-03-05 04:05:39,762 INFO BlockStateChange: BLOCK > NameSystem.addToCorruptReplicasMap: blk_1085498930 added as corrupt on > 10.0.0.218:50010 by > hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com/10.0.0.218 because block is > COMMITTED and reported length 2054413 does not match length in block map > 141232 > 2018-03-05 04:05:40,162 INFO > org.apache.hadoop.hdfs.server.namenode.FSNamesystem: BLOCK* > blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, > primaryNodeIndex=-1, > replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], > > ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], > > ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} > is not COMPLETE (ucState = COMMITTED, replication# = 3 >= minimum = 2) in > file > /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6
[jira] [Updated] (HDFS-13243) Get CorruptBlock because of calling close and sync in same time
[ https://issues.apache.org/jira/browse/HDFS-13243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Zephyr Guo updated HDFS-13243: -- Attachment: HDFS-13243-v2.patch > Get CorruptBlock because of calling close and sync in same time > --- > > Key: HDFS-13243 > URL: https://issues.apache.org/jira/browse/HDFS-13243 > Project: Hadoop HDFS > Issue Type: Bug > Components: namenode >Affects Versions: 2.7.2, 3.2.0 >Reporter: Zephyr Guo >Priority: Critical > Fix For: 3.2.0 > > Attachments: HDFS-13243-v1.patch, HDFS-13243-v2.patch > > > HDFS File might get broken because of corrupt block(s) that could be produced > by calling close and sync in the same time. > When calling close was not successful, UCBlock status would change to > COMMITTED, and if a sync request gets popped from queue and processed, sync > operation would change the last block length. > After that, DataNode would report all received block to NameNode, and will > check Block length of all COMMITTED Blocks. But the block length was already > different between recorded in NameNode memory and reported by DataNode, and > consequently, the last block is marked as corruptted because of inconsistent > length. > > {panel:title=Log in my hdfs} > 2018-03-05 04:05:39,261 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* > allocate blk_1085498930_11758129\{UCState=UNDER_CONSTRUCTION, > truncateBlock=null, primaryNodeIndex=-1, > replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], > > ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], > > ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} > for > /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 > 2018-03-05 04:05:39,760 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* > fsync: > /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 > for DFSClient_NONMAPREDUCE_1077513762_1 > 2018-03-05 04:05:39,761 INFO > org.apache.hadoop.hdfs.server.namenode.FSNamesystem: BLOCK* > blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, > primaryNodeIndex=-1, > replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], > > ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], > > ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} > is not COMPLETE (ucState = COMMITTED, replication# = 0 < minimum = 2) in > file > /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 > 2018-03-05 04:05:39,761 INFO BlockStateChange: BLOCK* addStoredBlock: > blockMap updated: 10.0.0.220:50010 is added to > blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, > primaryNodeIndex=-1, > replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], > > ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], > > ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} > size 2054413 > 2018-03-05 04:05:39,761 INFO BlockStateChange: BLOCK > NameSystem.addToCorruptReplicasMap: blk_1085498930 added as corrupt on > 10.0.0.219:50010 by > hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com/10.0.0.219 because block is > COMMITTED and reported length 2054413 does not match length in block map > 141232 > 2018-03-05 04:05:39,762 INFO BlockStateChange: BLOCK > NameSystem.addToCorruptReplicasMap: blk_1085498930 added as corrupt on > 10.0.0.218:50010 by > hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com/10.0.0.218 because block is > COMMITTED and reported length 2054413 does not match length in block map > 141232 > 2018-03-05 04:05:40,162 INFO > org.apache.hadoop.hdfs.server.namenode.FSNamesystem: BLOCK* > blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, > primaryNodeIndex=-1, > replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], > > ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], > > ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} > is not COMPLETE (ucState = COMMITTED, replication# = 3 >= minimum = 2) in > file > /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default
[jira] [Updated] (HDFS-13176) WebHdfs file path gets truncated when having semicolon (;) inside
[ https://issues.apache.org/jira/browse/HDFS-13176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Zsolt Venczel updated HDFS-13176: - Attachment: HDFS-13176-branch-2.03.patch > WebHdfs file path gets truncated when having semicolon (;) inside > - > > Key: HDFS-13176 > URL: https://issues.apache.org/jira/browse/HDFS-13176 > Project: Hadoop HDFS > Issue Type: Bug > Components: webhdfs >Affects Versions: 3.0.0 >Reporter: Zsolt Venczel >Assignee: Zsolt Venczel >Priority: Major > Attachments: HDFS-13176-branch-2.01.patch, > HDFS-13176-branch-2.03.patch, HDFS-13176.01.patch, HDFS-13176.02.patch, > TestWebHdfsUrl.testWebHdfsSpecialCharacterFile.patch > > > Find attached a patch having a test case that tries to reproduce the problem. -- 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-13234) Remove renew configuration instance in ConfiguredFailoverProxyProvider and reduce memory footprint for client
[ https://issues.apache.org/jira/browse/HDFS-13234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390739#comment-16390739 ] He Xiaoqiao commented on HDFS-13234: Thanks [~kihwal],[~elgoiri] for your comments. {quote}How big is a single instance in your use case? Bloated conf in dfs client is obviously a serious issue, but it can create bigger issues in apps/jobs.{quote} Actually this is yarn logs upload service, and the size of single {{Configuration}} instance which located at NodeManager is about 120KB, but it is bloated to 600MB over all {{Configuration}} instances since two factors: a. HDFS Federation + HA with QJM and there are dozens of nameservices (~20), and it create {{ConfiguredFailoverProxyProvider}} instance for each name service at client, while num of {{Configuration}} instances will *2; b. there are 150 single threads at most to execute upload yarn logs to HDFS; so, in the extreme case, memory footprint of {{Configuration}} instances will occupy ~20 * 2 * 150 * 120KB; {quote}New conf objects are created to prevent unintended conf update propagation. {quote} it is true to prevent unintended conf update propagation, I think there are other ways to avoid clone the whole conf for only two parameters of {{ConfiguredFailoverProxyProvider}} and {{IPFailoverProxyProvider}} and waste huge memory resource probably as you mentioned, is there some suggestions? [~kihwal] Thanks again. > Remove renew configuration instance in ConfiguredFailoverProxyProvider and > reduce memory footprint for client > - > > Key: HDFS-13234 > URL: https://issues.apache.org/jira/browse/HDFS-13234 > Project: Hadoop HDFS > Issue Type: Improvement > Components: fs, ha, hdfs-client >Reporter: He Xiaoqiao >Priority: Major > Attachments: HDFS-13234.001.patch > > > The memory footprint of #DFSClient is very considerable in some special > scenario since there are many #Configuration instances and occupy much memory > resource (In an extreme case, org.apache.hadoop.conf.Configuration occupies > over 600MB we meet under HDFS Federation an HA with QJM and there are dozens > of NameNodes). I think some new Configuration instance is not necessary. Such > as #ConfiguredFailoverProxyProvider initialization. > {code:java} > public ConfiguredFailoverProxyProvider(Configuration conf, URI uri, > Class xface, HAProxyFactory factory) { > this.xface = xface; > this.conf = new Configuration(conf); > .. > } > {code} -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390737#comment-16390737 ] genericqa commented on HDFS-13226: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 21s{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 30s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 9s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 52s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 16s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 50s{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 13s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 58s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 12s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 5s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 5s{color} | {color:green} the patch passed {color} | | {color:orange}-0{color} | {color:orange} checkstyle {color} | {color:orange} 0m 48s{color} | {color:orange} hadoop-hdfs-project/hadoop-hdfs: The patch generated 4 new + 1 unchanged - 0 fixed = 5 total (was 1) {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 14s{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} 10m 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} 2m 18s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 55s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red}128m 16s{color} | {color:red} hadoop-hdfs in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 25s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}183m 35s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hdfs.server.datanode.TestDataNodeVolumeFailureReporting | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-13226 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12913494/HDFS-13226.004.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 20f43f8363b2 3.13.0-135-generic #184-Ubuntu SMP Wed Oct 18 11:55:51 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / 583f459 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_151 | | findbugs | v3.1.0-RC1 | | checkstyle | https://builds.apache.org/job/PreCommit-HDFS-Build/23340/artifact/out/diff-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt | | unit | https://builds.apache.org/job/PreCommit-HDFS-Build/23340/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/23340/testReport/ | | Max. process+thread count | 3008 (vs. ulimit
[jira] [Commented] (HDFS-11600) Refactor TestDFSStripedOutputStreamWithFailure test classes
[ https://issues.apache.org/jira/browse/HDFS-11600?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390736#comment-16390736 ] genericqa commented on HDFS-11600: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 29s{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 26 new or modified test files. {color} | || || || || {color:brown} trunk Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 15m 25s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 53s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 45s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 57s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 13m 40s{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} 1m 46s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 53s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 55s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 47s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 47s{color} | {color:green} hadoop-hdfs-project_hadoop-hdfs generated 0 new + 400 unchanged - 3 fixed = 400 total (was 403) {color} | | {color:orange}-0{color} | {color:orange} checkstyle {color} | {color:orange} 0m 38s{color} | {color:orange} hadoop-hdfs-project/hadoop-hdfs: The patch generated 11 new + 0 unchanged - 0 fixed = 11 total (was 0) {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 51s{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} 10m 7s{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} 1m 55s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 54s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red}113m 16s{color} | {color:red} hadoop-hdfs in the patch failed. {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}164m 16s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hdfs.web.TestWebHdfsTimeouts | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-11600 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12913359/HDFS-11600.004.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 0e7ed5e7b882 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / 583f459 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_151 | | findbugs | v3.1.0-RC1 | | checkstyle | https://builds.apache.org/job/PreCommit-HDFS-Build/23341/artifact/out/diff-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt | | unit | https://builds.apache.org/job/PreCommit-HDFS-Build/23341/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/23341/testRepo
[jira] [Commented] (HDFS-13244) Add stack, conf, metrics links to utilities dropdown in NN webUI
[ https://issues.apache.org/jira/browse/HDFS-13244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390734#comment-16390734 ] Ajay Kumar commented on HDFS-13244: --- +1 non-binding. tested in local machine. > Add stack, conf, metrics links to utilities dropdown in NN webUI > > > Key: HDFS-13244 > URL: https://issues.apache.org/jira/browse/HDFS-13244 > Project: Hadoop HDFS > Issue Type: Bug >Reporter: Bharat Viswanadham >Assignee: Bharat Viswanadham >Priority: Major > Attachments: HDFS-13244.00.patch, Screen Shot 2018-03-07 at 11.28.27 > AM.png > > > Add stack, conf, metrics links to utilities dropdown in NN webUI > cc [~arpitagarwal] for suggesting this. -- 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] [Updated] (HDFS-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chao Sun updated HDFS-13230: Attachment: HDFS-13230.001.patch > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch, HDFS-13230.001.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390730#comment-16390730 ] Chao Sun commented on HDFS-13230: - Thanks [~ywskycn] for taking a look. I think those two lines are within 80 characters - perhaps it's because of the parameter hints in the IDE? Will remove the TODO and fix the style issues. > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch, HDFS-13230.001.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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] [Created] (HDFS-13245) RBF: State store DBMS implementation
maobaolong created HDFS-13245: - Summary: RBF: State store DBMS implementation Key: HDFS-13245 URL: https://issues.apache.org/jira/browse/HDFS-13245 Project: Hadoop HDFS Issue Type: Sub-task Components: hdfs Reporter: maobaolong -- 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-12999) When reach the end of the block group, it may not need to flush all the data packets(flushAllInternals) twice.
[ https://issues.apache.org/jira/browse/HDFS-12999?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390704#comment-16390704 ] Wangda Tan commented on HDFS-12999: --- [~figo], removed fix version, it should be only set by committer when the patch got committed. > When reach the end of the block group, it may not need to flush all the data > packets(flushAllInternals) twice. > --- > > Key: HDFS-12999 > URL: https://issues.apache.org/jira/browse/HDFS-12999 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.0.0-beta1, 3.1.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Attachments: HDFS-12999.001.patch, HDFS-12999.002.patch > > > In order to make the process simplification. It's no need to flush all the > data packets(flushAllInternals) twice,when reach the end of the block group. -- 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] [Updated] (HDFS-12999) When reach the end of the block group, it may not need to flush all the data packets(flushAllInternals) twice.
[ https://issues.apache.org/jira/browse/HDFS-12999?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Wangda Tan updated HDFS-12999: -- Fix Version/s: (was: 3.1.0) > When reach the end of the block group, it may not need to flush all the data > packets(flushAllInternals) twice. > --- > > Key: HDFS-12999 > URL: https://issues.apache.org/jira/browse/HDFS-12999 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.0.0-beta1, 3.1.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Attachments: HDFS-12999.001.patch, HDFS-12999.002.patch > > > In order to make the process simplification. It's no need to flush all the > data packets(flushAllInternals) twice,when reach the end of the block group. -- 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-13212) RBF: Fix router location cache issue
[ https://issues.apache.org/jira/browse/HDFS-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390698#comment-16390698 ] Weiwei Wu commented on HDFS-13212: -- Add an assert to check the default location and fix the check style issues. But the TestRouterQuota is pass in my computer(pull code from trunk today). Let's see what Yetus says. > RBF: Fix router location cache issue > > > Key: HDFS-13212 > URL: https://issues.apache.org/jira/browse/HDFS-13212 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: federation, hdfs >Reporter: Weiwei Wu >Priority: Major > Attachments: HDFS-13212-001.patch, HDFS-13212-002.patch, > HDFS-13212-003.patch, HDFS-13212-004.patch, HDFS-13212-005.patch, > HDFS-13212-006.patch > > > The MountTableResolver refreshEntries function have a bug when add a new > mount table entry which already have location cache. The old location cache > will never be invalid until this mount point change again. > Need to invalid the location cache when add the mount table entries. -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390697#comment-16390697 ] maobaolong commented on HDFS-13226: --- My next patch will base on v003, let me complete the doc and test follow your comment. Thank you for your review. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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] [Updated] (HDFS-13212) RBF: Fix router location cache issue
[ https://issues.apache.org/jira/browse/HDFS-13212?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Weiwei Wu updated HDFS-13212: - Attachment: HDFS-13212-006.patch > RBF: Fix router location cache issue > > > Key: HDFS-13212 > URL: https://issues.apache.org/jira/browse/HDFS-13212 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: federation, hdfs >Reporter: Weiwei Wu >Priority: Major > Attachments: HDFS-13212-001.patch, HDFS-13212-002.patch, > HDFS-13212-003.patch, HDFS-13212-004.patch, HDFS-13212-005.patch, > HDFS-13212-006.patch > > > The MountTableResolver refreshEntries function have a bug when add a new > mount table entry which already have location cache. The old location cache > will never be invalid until this mount point change again. > Need to invalid the location cache when add the mount table entries. -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390628#comment-16390628 ] Yiqun Lin commented on HDFS-13226: -- {quote}and the end user really want to realize what mistake he has made, and we want to change the return type from boolean to void. {quote} Makes sense to me. Three comments for the v003 patch. 1.In {{MountTable#validate}}, would you just use throwing exception to replace the log printing like {{MembershipState#validate}}? I think you have changed some validate logic. 2.Please update the javadoc of {{MountTable#validate}}. 3.Add new test for {{MountTable#validate}}. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390621#comment-16390621 ] genericqa commented on HDFS-13230: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 16m 36s{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} 24m 20s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 57s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 51s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 4s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 44s{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 0s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 56s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 58s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 10s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 10s{color} | {color:green} the patch passed {color} | | {color:orange}-0{color} | {color:orange} checkstyle {color} | {color:orange} 0m 59s{color} | {color:orange} hadoop-hdfs-project/hadoop-hdfs: The patch generated 5 new + 0 unchanged - 0 fixed = 5 total (was 0) {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 25s{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 12s{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 59s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 54s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red}133m 11s{color} | {color:red} hadoop-hdfs in the patch failed. {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}213m 20s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hdfs.server.datanode.TestDataNodeVolumeFailure | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-13230 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12913467/HDFS-13230.000.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 38dce4410f80 3.13.0-137-generic #186-Ubuntu SMP Mon Dec 4 19:09:19 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / 19ae442 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_151 | | findbugs | v3.1.0-RC1 | | checkstyle | https://builds.apache.org/job/PreCommit-HDFS-Build/23338/artifact/out/diff-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt | | unit | https://builds.apache.org/job/PreCommit-HDFS-Build/23338/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/23338/testReport/ | | Max. process+thread count | 2930 (vs. ulimit of 1)
[jira] [Commented] (HDFS-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390619#comment-16390619 ] maobaolong commented on HDFS-13226: --- [~linyiqun] So, what about v003 patch, it fit the HAState#checkOperation style, and the end user really want to realize what mistake he has made, and we want to change the return type from boolean to void. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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] [Updated] (HDFS-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dennis Huo updated HDFS-13056: -- Status: Patch Available (was: Open) > Expose file-level composite CRCs in HDFS which are comparable across > different instances/layouts > > > Key: HDFS-13056 > URL: https://issues.apache.org/jira/browse/HDFS-13056 > Project: Hadoop HDFS > Issue Type: New Feature > Components: datanode, distcp, erasure-coding, federation, hdfs >Affects Versions: 3.0.0 >Reporter: Dennis Huo >Assignee: Dennis Huo >Priority: Major > Attachments: HDFS-13056-branch-2.8.001.patch, > HDFS-13056-branch-2.8.002.patch, HDFS-13056-branch-2.8.003.patch, > HDFS-13056-branch-2.8.004.patch, HDFS-13056-branch-2.8.005.patch, > HDFS-13056-branch-2.8.poc1.patch, HDFS-13056.001.patch, HDFS-13056.002.patch, > HDFS-13056.003.patch, HDFS-13056.003.patch, HDFS-13056.004.patch, > HDFS-13056.005.patch, HDFS-13056.006.patch, HDFS-13056.007.patch, > HDFS-13056.008.patch, Reference_only_zhen_PPOC_hadoop2.6.X.diff, > hdfs-file-composite-crc32-v1.pdf, hdfs-file-composite-crc32-v2.pdf, > hdfs-file-composite-crc32-v3.pdf > > > FileChecksum was first introduced in > [https://issues-test.apache.org/jira/browse/HADOOP-3981] and ever since then > has remained defined as MD5-of-MD5-of-CRC, where per-512-byte chunk CRCs are > already stored as part of datanode metadata, and the MD5 approach is used to > compute an aggregate value in a distributed manner, with individual datanodes > computing the MD5-of-CRCs per-block in parallel, and the HDFS client > computing the second-level MD5. > > A shortcoming of this approach which is often brought up is the fact that > this FileChecksum is sensitive to the internal block-size and chunk-size > configuration, and thus different HDFS files with different block/chunk > settings cannot be compared. More commonly, one might have different HDFS > clusters which use different block sizes, in which case any data migration > won't be able to use the FileChecksum for distcp's rsync functionality or for > verifying end-to-end data integrity (on top of low-level data integrity > checks applied at data transfer time). > > This was also revisited in https://issues.apache.org/jira/browse/HDFS-8430 > during the addition of checksum support for striped erasure-coded files; > while there was some discussion of using CRC composability, it still > ultimately settled on hierarchical MD5 approach, which also adds the problem > that checksums of basic replicated files are not comparable to striped files. > > This feature proposes to add a "COMPOSITE-CRC" FileChecksum type which uses > CRC composition to remain completely chunk/block agnostic, and allows > comparison between striped vs replicated files, between different HDFS > instances, and possible even between HDFS and other external storage systems. > This feature can also be added in-place to be compatible with existing block > metadata, and doesn't need to change the normal path of chunk verification, > so is minimally invasive. This also means even large preexisting HDFS > deployments could adopt this feature to retroactively sync data. A detailed > design document can be found here: > https://storage.googleapis.com/dennishuo/hdfs-file-composite-crc32-v1.pdf -- 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-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390617#comment-16390617 ] Dennis Huo commented on HDFS-13056: --- Some observations - the FileSystem interface doesn't appear to provide a way to specify NEW_BLOCK at runtime in its append methods, and the value from its Configuration is sticky, so changing it in the Configuration doesn't have effect at runtime. Also, FsShell doesn't appear to expose options for NEW_BLOCK, so in general, there's no easy way to generate these mixed files without custom code. The DistributedFileSystem#append method which does take an EnumSet of options is not an override method of the FileSystem interface, since the options may be HDFS-specific as well. All this just means I'd expect mixed-chunksize files to be pretty rare in the wild. Nonetheless, as long as we fetch a new DistributedFileSystem instance when appending and explicitly cast it to use its special append method, we can construct the scenario. Added the test case under the same pattern of differentiating what's supported by COMPOSITE_CRC vs the default TestFileChecksum: [https://github.com/dennishuo/hadoop/commit/eaae8855211c4da90d7182e0fb7db5da34d5f482] Uploaded patches [^HDFS-13056-branch-2.8.005.patch] and [^HDFS-13056.008.patch] adding support for mixed-chunksize files when using COMPOSITE_CRC. Successfully tested end-to-end in a distributed cluster. > Expose file-level composite CRCs in HDFS which are comparable across > different instances/layouts > > > Key: HDFS-13056 > URL: https://issues.apache.org/jira/browse/HDFS-13056 > Project: Hadoop HDFS > Issue Type: New Feature > Components: datanode, distcp, erasure-coding, federation, hdfs >Affects Versions: 3.0.0 >Reporter: Dennis Huo >Assignee: Dennis Huo >Priority: Major > Attachments: HDFS-13056-branch-2.8.001.patch, > HDFS-13056-branch-2.8.002.patch, HDFS-13056-branch-2.8.003.patch, > HDFS-13056-branch-2.8.004.patch, HDFS-13056-branch-2.8.005.patch, > HDFS-13056-branch-2.8.poc1.patch, HDFS-13056.001.patch, HDFS-13056.002.patch, > HDFS-13056.003.patch, HDFS-13056.003.patch, HDFS-13056.004.patch, > HDFS-13056.005.patch, HDFS-13056.006.patch, HDFS-13056.007.patch, > HDFS-13056.008.patch, Reference_only_zhen_PPOC_hadoop2.6.X.diff, > hdfs-file-composite-crc32-v1.pdf, hdfs-file-composite-crc32-v2.pdf, > hdfs-file-composite-crc32-v3.pdf > > > FileChecksum was first introduced in > [https://issues-test.apache.org/jira/browse/HADOOP-3981] and ever since then > has remained defined as MD5-of-MD5-of-CRC, where per-512-byte chunk CRCs are > already stored as part of datanode metadata, and the MD5 approach is used to > compute an aggregate value in a distributed manner, with individual datanodes > computing the MD5-of-CRCs per-block in parallel, and the HDFS client > computing the second-level MD5. > > A shortcoming of this approach which is often brought up is the fact that > this FileChecksum is sensitive to the internal block-size and chunk-size > configuration, and thus different HDFS files with different block/chunk > settings cannot be compared. More commonly, one might have different HDFS > clusters which use different block sizes, in which case any data migration > won't be able to use the FileChecksum for distcp's rsync functionality or for > verifying end-to-end data integrity (on top of low-level data integrity > checks applied at data transfer time). > > This was also revisited in https://issues.apache.org/jira/browse/HDFS-8430 > during the addition of checksum support for striped erasure-coded files; > while there was some discussion of using CRC composability, it still > ultimately settled on hierarchical MD5 approach, which also adds the problem > that checksums of basic replicated files are not comparable to striped files. > > This feature proposes to add a "COMPOSITE-CRC" FileChecksum type which uses > CRC composition to remain completely chunk/block agnostic, and allows > comparison between striped vs replicated files, between different HDFS > instances, and possible even between HDFS and other external storage systems. > This feature can also be added in-place to be compatible with existing block > metadata, and doesn't need to change the normal path of chunk verification, > so is minimally invasive. This also means even large preexisting HDFS > deployments could adopt this feature to retroactively sync data. A detailed > design document can be found here: > https://storage.googleapis.com/dennishuo/hdfs-file-composite-crc32-v1.pdf -- This message was sent by Atlassian JIRA (v7.6.3#76005) -
[jira] [Updated] (HDFS-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dennis Huo updated HDFS-13056: -- Status: Open (was: Patch Available) > Expose file-level composite CRCs in HDFS which are comparable across > different instances/layouts > > > Key: HDFS-13056 > URL: https://issues.apache.org/jira/browse/HDFS-13056 > Project: Hadoop HDFS > Issue Type: New Feature > Components: datanode, distcp, erasure-coding, federation, hdfs >Affects Versions: 3.0.0 >Reporter: Dennis Huo >Assignee: Dennis Huo >Priority: Major > Attachments: HDFS-13056-branch-2.8.001.patch, > HDFS-13056-branch-2.8.002.patch, HDFS-13056-branch-2.8.003.patch, > HDFS-13056-branch-2.8.004.patch, HDFS-13056-branch-2.8.005.patch, > HDFS-13056-branch-2.8.poc1.patch, HDFS-13056.001.patch, HDFS-13056.002.patch, > HDFS-13056.003.patch, HDFS-13056.003.patch, HDFS-13056.004.patch, > HDFS-13056.005.patch, HDFS-13056.006.patch, HDFS-13056.007.patch, > HDFS-13056.008.patch, Reference_only_zhen_PPOC_hadoop2.6.X.diff, > hdfs-file-composite-crc32-v1.pdf, hdfs-file-composite-crc32-v2.pdf, > hdfs-file-composite-crc32-v3.pdf > > > FileChecksum was first introduced in > [https://issues-test.apache.org/jira/browse/HADOOP-3981] and ever since then > has remained defined as MD5-of-MD5-of-CRC, where per-512-byte chunk CRCs are > already stored as part of datanode metadata, and the MD5 approach is used to > compute an aggregate value in a distributed manner, with individual datanodes > computing the MD5-of-CRCs per-block in parallel, and the HDFS client > computing the second-level MD5. > > A shortcoming of this approach which is often brought up is the fact that > this FileChecksum is sensitive to the internal block-size and chunk-size > configuration, and thus different HDFS files with different block/chunk > settings cannot be compared. More commonly, one might have different HDFS > clusters which use different block sizes, in which case any data migration > won't be able to use the FileChecksum for distcp's rsync functionality or for > verifying end-to-end data integrity (on top of low-level data integrity > checks applied at data transfer time). > > This was also revisited in https://issues.apache.org/jira/browse/HDFS-8430 > during the addition of checksum support for striped erasure-coded files; > while there was some discussion of using CRC composability, it still > ultimately settled on hierarchical MD5 approach, which also adds the problem > that checksums of basic replicated files are not comparable to striped files. > > This feature proposes to add a "COMPOSITE-CRC" FileChecksum type which uses > CRC composition to remain completely chunk/block agnostic, and allows > comparison between striped vs replicated files, between different HDFS > instances, and possible even between HDFS and other external storage systems. > This feature can also be added in-place to be compatible with existing block > metadata, and doesn't need to change the normal path of chunk verification, > so is minimally invasive. This also means even large preexisting HDFS > deployments could adopt this feature to retroactively sync data. A detailed > design document can be found here: > https://storage.googleapis.com/dennishuo/hdfs-file-composite-crc32-v1.pdf -- 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] [Updated] (HDFS-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dennis Huo updated HDFS-13056: -- Attachment: HDFS-13056.008.patch > Expose file-level composite CRCs in HDFS which are comparable across > different instances/layouts > > > Key: HDFS-13056 > URL: https://issues.apache.org/jira/browse/HDFS-13056 > Project: Hadoop HDFS > Issue Type: New Feature > Components: datanode, distcp, erasure-coding, federation, hdfs >Affects Versions: 3.0.0 >Reporter: Dennis Huo >Assignee: Dennis Huo >Priority: Major > Attachments: HDFS-13056-branch-2.8.001.patch, > HDFS-13056-branch-2.8.002.patch, HDFS-13056-branch-2.8.003.patch, > HDFS-13056-branch-2.8.004.patch, HDFS-13056-branch-2.8.005.patch, > HDFS-13056-branch-2.8.poc1.patch, HDFS-13056.001.patch, HDFS-13056.002.patch, > HDFS-13056.003.patch, HDFS-13056.003.patch, HDFS-13056.004.patch, > HDFS-13056.005.patch, HDFS-13056.006.patch, HDFS-13056.007.patch, > HDFS-13056.008.patch, Reference_only_zhen_PPOC_hadoop2.6.X.diff, > hdfs-file-composite-crc32-v1.pdf, hdfs-file-composite-crc32-v2.pdf, > hdfs-file-composite-crc32-v3.pdf > > > FileChecksum was first introduced in > [https://issues-test.apache.org/jira/browse/HADOOP-3981] and ever since then > has remained defined as MD5-of-MD5-of-CRC, where per-512-byte chunk CRCs are > already stored as part of datanode metadata, and the MD5 approach is used to > compute an aggregate value in a distributed manner, with individual datanodes > computing the MD5-of-CRCs per-block in parallel, and the HDFS client > computing the second-level MD5. > > A shortcoming of this approach which is often brought up is the fact that > this FileChecksum is sensitive to the internal block-size and chunk-size > configuration, and thus different HDFS files with different block/chunk > settings cannot be compared. More commonly, one might have different HDFS > clusters which use different block sizes, in which case any data migration > won't be able to use the FileChecksum for distcp's rsync functionality or for > verifying end-to-end data integrity (on top of low-level data integrity > checks applied at data transfer time). > > This was also revisited in https://issues.apache.org/jira/browse/HDFS-8430 > during the addition of checksum support for striped erasure-coded files; > while there was some discussion of using CRC composability, it still > ultimately settled on hierarchical MD5 approach, which also adds the problem > that checksums of basic replicated files are not comparable to striped files. > > This feature proposes to add a "COMPOSITE-CRC" FileChecksum type which uses > CRC composition to remain completely chunk/block agnostic, and allows > comparison between striped vs replicated files, between different HDFS > instances, and possible even between HDFS and other external storage systems. > This feature can also be added in-place to be compatible with existing block > metadata, and doesn't need to change the normal path of chunk verification, > so is minimally invasive. This also means even large preexisting HDFS > deployments could adopt this feature to retroactively sync data. A detailed > design document can be found here: > https://storage.googleapis.com/dennishuo/hdfs-file-composite-crc32-v1.pdf -- 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] [Updated] (HDFS-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Dennis Huo updated HDFS-13056: -- Attachment: HDFS-13056-branch-2.8.005.patch > Expose file-level composite CRCs in HDFS which are comparable across > different instances/layouts > > > Key: HDFS-13056 > URL: https://issues.apache.org/jira/browse/HDFS-13056 > Project: Hadoop HDFS > Issue Type: New Feature > Components: datanode, distcp, erasure-coding, federation, hdfs >Affects Versions: 3.0.0 >Reporter: Dennis Huo >Assignee: Dennis Huo >Priority: Major > Attachments: HDFS-13056-branch-2.8.001.patch, > HDFS-13056-branch-2.8.002.patch, HDFS-13056-branch-2.8.003.patch, > HDFS-13056-branch-2.8.004.patch, HDFS-13056-branch-2.8.005.patch, > HDFS-13056-branch-2.8.poc1.patch, HDFS-13056.001.patch, HDFS-13056.002.patch, > HDFS-13056.003.patch, HDFS-13056.003.patch, HDFS-13056.004.patch, > HDFS-13056.005.patch, HDFS-13056.006.patch, HDFS-13056.007.patch, > HDFS-13056.008.patch, Reference_only_zhen_PPOC_hadoop2.6.X.diff, > hdfs-file-composite-crc32-v1.pdf, hdfs-file-composite-crc32-v2.pdf, > hdfs-file-composite-crc32-v3.pdf > > > FileChecksum was first introduced in > [https://issues-test.apache.org/jira/browse/HADOOP-3981] and ever since then > has remained defined as MD5-of-MD5-of-CRC, where per-512-byte chunk CRCs are > already stored as part of datanode metadata, and the MD5 approach is used to > compute an aggregate value in a distributed manner, with individual datanodes > computing the MD5-of-CRCs per-block in parallel, and the HDFS client > computing the second-level MD5. > > A shortcoming of this approach which is often brought up is the fact that > this FileChecksum is sensitive to the internal block-size and chunk-size > configuration, and thus different HDFS files with different block/chunk > settings cannot be compared. More commonly, one might have different HDFS > clusters which use different block sizes, in which case any data migration > won't be able to use the FileChecksum for distcp's rsync functionality or for > verifying end-to-end data integrity (on top of low-level data integrity > checks applied at data transfer time). > > This was also revisited in https://issues.apache.org/jira/browse/HDFS-8430 > during the addition of checksum support for striped erasure-coded files; > while there was some discussion of using CRC composability, it still > ultimately settled on hierarchical MD5 approach, which also adds the problem > that checksums of basic replicated files are not comparable to striped files. > > This feature proposes to add a "COMPOSITE-CRC" FileChecksum type which uses > CRC composition to remain completely chunk/block agnostic, and allows > comparison between striped vs replicated files, between different HDFS > instances, and possible even between HDFS and other external storage systems. > This feature can also be added in-place to be compatible with existing block > metadata, and doesn't need to change the normal path of chunk verification, > so is minimally invasive. This also means even large preexisting HDFS > deployments could adopt this feature to retroactively sync data. A detailed > design document can be found here: > https://storage.googleapis.com/dennishuo/hdfs-file-composite-crc32-v1.pdf -- 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] [Comment Edited] (HDFS-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390615#comment-16390615 ] Yiqun Lin edited comment on HDFS-13226 at 3/8/18 2:25 AM: -- Just looking into the v004 patch. I don't think it's a appropriate way to throw exception in {{validate}} method. After that, the returned value must be {{true}} or exception. Actually here we just want to check the error type. One way we can add new test specified for {{MountTable#validate}}. You may create this test in {{TestMountTable}}. Current test is also needed. In additional, following check seems not enough: {code} +if (!this.getSourcePath().startsWith("/") +|| this.getSourcePath().startsWith("//")) { + throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); } {code} We may need a more strict valid path checking in constructing new mount table. Additionally check the case of {{//}} is one of the invalid case. We can complete this in another JIRA. was (Author: linyiqun): Just looking into the v004 patch. I don't think it's a appropriate way to throw exception in {{validate}} method. After that, the returned value must be {{true}} or exception. Actually here we just want to check the error type. One way we can add new test specified for {{MountTable#validate}}. You may create this test in {{TestMountTable}}. In additional, following check seems not enough: {code} +if (!this.getSourcePath().startsWith("/") +|| this.getSourcePath().startsWith("//")) { + throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); } {code} We may need a more strict valid path checking in constructing new mount table. Additionally check the case of {{//}} is one of the invalid case. We can complete this in another JIRA. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390615#comment-16390615 ] Yiqun Lin commented on HDFS-13226: -- Just looking into the v004 patch. I don't think it's a appropriate way to throw exception in {{validate}} method. After that, the returned value must be {{true}} or exception. Actually here we just want to check the error type. One way we can add new test specified for {{MountTable#validate}}. You may create this test in {{TestMountTable}}. In additional, following check seems not enough: {code} +if (!this.getSourcePath().startsWith("/") +|| this.getSourcePath().startsWith("//")) { + throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); } {code} We may need a more strict valid path checking in constructing new mount table. Additionally check the case of {{//}} is one of the invalid case. We can complete this in another JIRA. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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] [Updated] (HDFS-13243) Get CorruptBlock because of calling close and sync in same time
[ https://issues.apache.org/jira/browse/HDFS-13243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Zephyr Guo updated HDFS-13243: -- Description: HDFS File might get broken because of corrupt block(s) that could be produced by calling close and sync in the same time. When calling close was not successful, UCBlock status would change to COMMITTED, and if a sync request gets popped from queue and processed, sync operation would change the last block length. After that, DataNode would report all received block to NameNode, and will check Block length of all COMMITTED Blocks. But the block length was already different between recorded in NameNode memory and reported by DataNode, and consequently, the last block is marked as corruptted because of inconsistent length. {panel:title=Log in my hdfs} 2018-03-05 04:05:39,261 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* allocate blk_1085498930_11758129\{UCState=UNDER_CONSTRUCTION, truncateBlock=null, primaryNodeIndex=-1, replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} for /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 2018-03-05 04:05:39,760 INFO org.apache.hadoop.hdfs.StateChange: BLOCK* fsync: /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 for DFSClient_NONMAPREDUCE_1077513762_1 2018-03-05 04:05:39,761 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: BLOCK* blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, primaryNodeIndex=-1, replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} is not COMPLETE (ucState = COMMITTED, replication# = 0 < minimum = 2) in file /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 2018-03-05 04:05:39,761 INFO BlockStateChange: BLOCK* addStoredBlock: blockMap updated: 10.0.0.220:50010 is added to blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, primaryNodeIndex=-1, replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} size 2054413 2018-03-05 04:05:39,761 INFO BlockStateChange: BLOCK NameSystem.addToCorruptReplicasMap: blk_1085498930 added as corrupt on 10.0.0.219:50010 by hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com/10.0.0.219 because block is COMMITTED and reported length 2054413 does not match length in block map 141232 2018-03-05 04:05:39,762 INFO BlockStateChange: BLOCK NameSystem.addToCorruptReplicasMap: blk_1085498930 added as corrupt on 10.0.0.218:50010 by hb-j5e517al6xib80rkb-004.hbase.rds.aliyuncs.com/10.0.0.218 because block is COMMITTED and reported length 2054413 does not match length in block map 141232 2018-03-05 04:05:40,162 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: BLOCK* blk_1085498930_11758129\{UCState=COMMITTED, truncateBlock=null, primaryNodeIndex=-1, replicas=[ReplicaUC[[DISK]DS-32c7e479-3845-4a44-adf1-831edec7506b:NORMAL:10.0.0.219:50010|RBW], ReplicaUC[[DISK]DS-a9a5d653-c049-463d-8e4a-d1f0dc14409c:NORMAL:10.0.0.220:50010|RBW], ReplicaUC[[DISK]DS-f2b7c04a-b724-4c69-abbf-d2e416f70706:NORMAL:10.0.0.218:50010|RBW]]} is not COMPLETE (ucState = COMMITTED, replication# = 3 >= minimum = 2) in file /hbase/WALs/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com,16020,1519845790686/hb-j5e517al6xib80rkb-006.hbase.rds.aliyuncs.com%2C16020%2C1519845790686.default.1520193926515 {panel} was: HDFS File might get broken because of corrupt block(s) that could be produced by calling close and sync in the same time. When calling close was not successful, UCBlock status would change to COMMITTED, and if a sync request gets popped from queue and processed, sync operation would change the last block length. After that, DataNode would report all received block to NameNode, and will check Block length of all COMMITTED Blocks. But the block length was already different between recorded in NameNode memory and reported by DataNode, and consequently, the last block is marked as corruptted because of inconsistent length. > Get CorruptBlock because of c
[jira] [Updated] (HDFS-13243) Get CorruptBlock because of calling close and sync in same time
[ https://issues.apache.org/jira/browse/HDFS-13243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Zephyr Guo updated HDFS-13243: -- Summary: Get CorruptBlock because of calling close and sync in same time (was: File might get broken because of calling close and sync in same time) > Get CorruptBlock because of calling close and sync in same time > --- > > Key: HDFS-13243 > URL: https://issues.apache.org/jira/browse/HDFS-13243 > Project: Hadoop HDFS > Issue Type: Bug > Components: namenode >Affects Versions: 2.7.2, 3.2.0 >Reporter: Zephyr Guo >Priority: Critical > Fix For: 3.2.0 > > Attachments: HDFS-13243-v1.patch > > > HDFS File might get broken because of corrupt block(s) that could be produced > by calling close and sync in the same time. > When calling close was not successful, UCBlock status would change to > COMMITTED, and if a sync request gets popped from queue and processed, sync > operation would change the last block length. > After that, DataNode would report all received block to NameNode, and will > check Block length of all COMMITTED Blocks. But the block length was already > different between recorded in NameNode memory and reported by DataNode, and > consequently, the last block is marked as corruptted because of inconsistent > length. -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390595#comment-16390595 ] Íñigo Goiri commented on HDFS-13226: I'd be OK switching to using {void}, we intenrally don't have many issues deploying this kind of chances. Not sure what others think, [~linyiqun]? For the exception, we should figure out a way to check the exception in the {{RouterAdmin}}. A minor comment, avoid using the {{Assert.}} prefix. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390570#comment-16390570 ] maobaolong commented on HDFS-13226: --- [~elgoiri] I think we should check the exception for the unit test, because the exception has been catch by RouterAdmin. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390566#comment-16390566 ] Íñigo Goiri commented on HDFS-13226: In [^HDFS-13226.004.patch], for the unit test, should we check for the exception? > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390567#comment-16390567 ] maobaolong commented on HDFS-13226: --- As the Router has not been used widely, we maybe can correct this completely, If so, Please take a look at HDFS-13226.003.patch. Otherwise, we can use the HDFS-13226.004.patch, just a little strange for a boolean method return a useless return value. Please feel free for that, we can discuss more. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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] [Updated] (HDFS-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] maobaolong updated HDFS-13226: -- Attachment: HDFS-13226.004.patch HDFS-13226.003.patch > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch, > HDFS-13226.003.patch, HDFS-13226.004.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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-13239) Fix non-empty dir warning message when setting default EC policy
[ https://issues.apache.org/jira/browse/HDFS-13239?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390561#comment-16390561 ] genericqa commented on HDFS-13239: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 15m 56s{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} 15m 34s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 52s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 49s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 59s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 10m 57s{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} 1m 47s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 51s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 55s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 47s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 47s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 41s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 52s{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} xml {color} | {color:green} 0m 1s{color} | {color:green} The patch has no ill-formed XML file. {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 10m 12s{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} 1m 49s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 47s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red}123m 4s{color} | {color:red} hadoop-hdfs in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 21s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}186m 46s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hdfs.TestDFSStripedOutputStreamWithFailure | | | hadoop.hdfs.server.datanode.TestDataNodeVolumeFailure | | | hadoop.hdfs.server.namenode.ha.TestRetryCacheWithHA | | | hadoop.hdfs.web.TestWebHdfsTimeouts | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-13239 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12913460/HDFS-13239.00.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml | | uname | Linux 43ef01b645d0 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / 19ae442 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_151 | | findbugs | v3.1.0-RC1 | | unit | https://builds.apache.org/job/PreCommit-HDFS-Build/23337/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt | | Test Results | https://builds.apache.org/job/PreCommit-HDF
[jira] [Commented] (HDFS-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390559#comment-16390559 ] Wei Yan commented on HDFS-13230: In general LGTM. Some minors: (1) We can just remove the "TODO" line, and remember to add the testcase in HDFS-13232. (2) In TestConnectionManager, there are two lines (44, 45) have over 80 characters. Let's wait for the Jenkins job. > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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] [Comment Edited] (HDFS-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390537#comment-16390537 ] maobaolong edited comment on HDFS-13226 at 3/8/18 1:06 AM: --- [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. {code:java} @Override public void validate() { super.validate(); if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); } for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) { throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } } {code} And we have to change the BaseRecord validate method return type and other subclass too, or for compromise, we can keep the return value to boolean now? As this a big deal, we must think twice. Maybe we can reference the HAState.checkOperation was (Author: maobaolong): [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. {code:java} @Override public void validate() { super.validate(); if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); } for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) { throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } } {code} And we have to change the BaseRecord validate method return type and other subclass too, or for compromise, we can keep the return value to boolean now? As this a big deal, we must think twice. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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] [Comment Edited] (HDFS-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390537#comment-16390537 ] maobaolong edited comment on HDFS-13226 at 3/8/18 1:04 AM: --- [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. {code:java} @Override public boolean validate() { if (!super.validate()) { return false; } if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); } for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) { throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } return true; } {code} And we have to change the BaseRecord validate method return type and other subclass too, or for compromise, we can keep the return value to boolean now? As this a big deal, we must think twice. was (Author: maobaolong): [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. {code:java} @Override public void validate() { super.validate();if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); }for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) {throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) {throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } } {code} And we have to change the BaseRecord validate method return type and other subclass too, or for compromise, we can keep the return value to boolean now? As this a big deal, we must think twice. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390543#comment-16390543 ] Íñigo Goiri commented on HDFS-13226: Let's keep the return to boolean for now; just for backwards compatibility. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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] [Comment Edited] (HDFS-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390537#comment-16390537 ] maobaolong edited comment on HDFS-13226 at 3/8/18 1:04 AM: --- [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. {code:java} @Override public void validate() { super.validate(); if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); } for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) { throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } } {code} And we have to change the BaseRecord validate method return type and other subclass too, or for compromise, we can keep the return value to boolean now? As this a big deal, we must think twice. was (Author: maobaolong): [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. {code:java} @Override public boolean validate() { if (!super.validate()) { return false; } if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); } for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) { throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } return true; } {code} And we have to change the BaseRecord validate method return type and other subclass too, or for compromise, we can keep the return value to boolean now? As this a big deal, we must think twice. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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] [Comment Edited] (HDFS-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390537#comment-16390537 ] maobaolong edited comment on HDFS-13226 at 3/8/18 1:03 AM: --- [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. {code:java} @Override public void validate() { super.validate();if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); }for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) {throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) {throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } } {code} And we have to change the BaseRecord validate method return type and other subclass too, or for compromise, we can keep the return value to boolean now? As this a big deal, we must think twice. was (Author: maobaolong): [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. @Override public void validate() { super.validate();if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); }for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) {throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) {throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } } And we have to change the BaseRecord validate method return type and other subclass too. As this a big deal, we must think twice. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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] [Updated] (HDFS-13176) WebHdfs file path gets truncated when having semicolon (;) inside
[ https://issues.apache.org/jira/browse/HDFS-13176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Zsolt Venczel updated HDFS-13176: - Attachment: HDFS-13176-branch-2.01.patch > WebHdfs file path gets truncated when having semicolon (;) inside > - > > Key: HDFS-13176 > URL: https://issues.apache.org/jira/browse/HDFS-13176 > Project: Hadoop HDFS > Issue Type: Bug > Components: webhdfs >Affects Versions: 3.0.0 >Reporter: Zsolt Venczel >Assignee: Zsolt Venczel >Priority: Major > Attachments: HDFS-13176-branch-2.01.patch, HDFS-13176.01.patch, > HDFS-13176.02.patch, TestWebHdfsUrl.testWebHdfsSpecialCharacterFile.patch > > > Find attached a patch having a test case that tries to reproduce the problem. -- 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-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390539#comment-16390539 ] Chao Sun commented on HDFS-13230: - Yes, I was going to complete that. The approach I was thinking is to initialize the pool with a positive {{minSize}}, make at least half of them active, and then try to do cleanup. However, I can't make more than one connection active because of HDFS-13232. I've synced with Ekanth and he will add the test in that patch. > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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-13226) RBF: We should throw the failure validate and refuse this mount entry
[ https://issues.apache.org/jira/browse/HDFS-13226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390537#comment-16390537 ] maobaolong commented on HDFS-13226: --- [~elgoiri] Yeah, i think throw the IllegalArgumentException is the wise choose, indeed, user want to see the first mistake, and the message should be display to the user directly. So, my suggestion is that we should change the return type of validate to void. @Override public void validate() { super.validate();if (!this.getSourcePath().startsWith("/") || this.getSourcePath().startsWith("//")) { throw new IllegalArgumentException("Invalid entry, all mount points must start with a single / "); }for (RemoteLocation loc : getDestinations()) { String nsId = loc.getNameserviceId(); if (nsId.length() == 0) {throw new IllegalArgumentException("Invalid entry, invalid destination nameservice "); } else if (!loc.getDest().startsWith("/") || this.getSourcePath().startsWith("//")) {throw new IllegalArgumentException("Invalid entry, all destination must start with a single / "); } } } And we have to change the BaseRecord validate method return type and other subclass too. As this a big deal, we must think twice. > RBF: We should throw the failure validate and refuse this mount entry > - > > Key: HDFS-13226 > URL: https://issues.apache.org/jira/browse/HDFS-13226 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: hdfs >Affects Versions: 3.2.0 >Reporter: maobaolong >Assignee: maobaolong >Priority: Major > Labels: RBF > Fix For: 3.2.0 > > Attachments: HDFS-13226.001.patch, HDFS-13226.002.patch > > > one of the mount entry source path rule is that the source path must start > with '\', somebody didn't follow the rule and execute the following command: > {code:bash} > $ hdfs dfsrouteradmin -add addnode/ ns1 /addnode/ > {code} > But, the console show we are successful add this entry. -- 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-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390523#comment-16390523 ] Íñigo Goiri commented on HDFS-13230: {quote} The cleanup method is actually moved out from CleanupTask class to the parent class, for easier testing. Otherwise, I have to somehow initialize a CleanupTask and call that method to test. {quote} That makes sense. I think this approach is good. Will you complete the TODO in the unit test? > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390508#comment-16390508 ] Chao Sun commented on HDFS-13230: - Thanks [~elgoiri] for the review and explanations. The {{cleanup}} method is actually moved out from {{CleanupTask}} class to the parent class, for easier testing. Otherwise, I have to somehow initialize a {{CleanupTask}} and call that method to test. > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390446#comment-16390446 ] Íñigo Goiri commented on HDFS-13230: Thanks [~csun] for [^HDFS-13230.000.patch]. Can we leave {{cleanup()}} in the same area it was to be able to compare the chances easily? For reference, this was added in HDFS-11546. {quote}in the cleanup method, why we only remove 1 connection every time? {quote} We just wanted to be conservative and remove one by one; no specific reason other than being conservative. {quote}it seems removeConnection will just pick the last connection to close, without considering whether it is closed or active, is there any reason for this? {quote} For the second question, the close is done asynchronously so we can just mark it as closed, and it will finish the request it's serving and closed afterwards. > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390398#comment-16390398 ] Chao Sun commented on HDFS-13230: - Attaching patch v0. Found that I need to change a few places in the original code to make it testable. Let me know if you have any suggestion. Also, in the {{cleanup}} method, why we only remove 1 connection every time? also, it seems {{removeConnection}} will just pick the last connection to close, without considering whether it is closed or active, is there any reason for this? > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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] [Updated] (HDFS-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chao Sun updated HDFS-13230: Status: Patch Available (was: Open) > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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] [Updated] (HDFS-13230) RBF: ConnectionManager's cleanup task will compare each pool's own active conns with its total conns
[ https://issues.apache.org/jira/browse/HDFS-13230?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chao Sun updated HDFS-13230: Attachment: HDFS-13230.000.patch > RBF: ConnectionManager's cleanup task will compare each pool's own active > conns with its total conns > > > Key: HDFS-13230 > URL: https://issues.apache.org/jira/browse/HDFS-13230 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Chao Sun >Priority: Minor > Attachments: HDFS-13230.000.patch > > > In the cleanup task: > {code:java} > long timeSinceLastActive = Time.now() - pool.getLastActiveTime(); > int total = pool.getNumConnections(); > int active = getNumActiveConnections(); > if (timeSinceLastActive > connectionCleanupPeriodMs || > {code} > the 3rd line should be pool.getNumActiveConnections() > -- 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-11394) Add method for getting erasure coding policy through WebHDFS
[ https://issues.apache.org/jira/browse/HDFS-11394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390395#comment-16390395 ] genericqa commented on HDFS-11394: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 9m 47s{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} 17m 49s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 59s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 51s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 3s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 54s{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 2s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 56s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 1s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 54s{color} | {color:green} the patch passed {color} | | {color:red}-1{color} | {color:red} javac {color} | {color:red} 0m 54s{color} | {color:red} hadoop-hdfs-project_hadoop-hdfs generated 2 new + 403 unchanged - 0 fixed = 405 total (was 403) {color} | | {color:orange}-0{color} | {color:orange} checkstyle {color} | {color:orange} 0m 47s{color} | {color:orange} hadoop-hdfs-project/hadoop-hdfs: The patch generated 4 new + 60 unchanged - 0 fixed = 64 total (was 60) {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 59s{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 1s{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 9s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 53s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:green}+1{color} | {color:green} unit {color} | {color:green} 89m 26s{color} | {color:green} hadoop-hdfs in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 26s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}152m 37s{color} | {color:black} {color} | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-11394 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12913431/HDFS-11394.005.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 86f20afc075f 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 / 037d783 | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_151 | | findbugs | v3.1.0-RC1 | | javac | https://builds.apache.org/job/PreCommit-HDFS-Build/23336/artifact/out/diff-compile-javac-hadoop-hdfs-project_hadoop-hdfs.txt | | checkstyle | https://builds.apache.org/job/PreCommit-HDFS-Build/23336/artifact/out/diff-checkstyle-hadoop-hdfs-project_hadoop-hdfs.txt | | Test Results | https://builds.apache.org/job/PreCommit-HDFS-Build/23336/testReport/ | | Max. process+thread count | 4274 (vs. ulimit of 1) | | modules | C
[jira] [Commented] (HDFS-13225) StripeReader#checkMissingBlocks() 's IOException info is incomplete
[ https://issues.apache.org/jira/browse/HDFS-13225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390391#comment-16390391 ] Hudson commented on HDFS-13225: --- SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #13791 (See [https://builds.apache.org/job/Hadoop-trunk-Commit/13791/]) HDFS-13225. StripeReader#checkMissingBlocks() 's IOException info is (hanishakoneru: rev 19ae4429f9a2807548bb4b9ff296521fbdbbb2bc) * (edit) hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/protocol/LocatedBlocks.java > StripeReader#checkMissingBlocks() 's IOException info is incomplete > --- > > Key: HDFS-13225 > URL: https://issues.apache.org/jira/browse/HDFS-13225 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.1.0, 3.2.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Fix For: 3.1.0, 3.0.2, 3.2.0 > > Attachments: HDFS-13225.001.patch, HDFS-13225.002.patch > > > When the file's ErasureCodingPolicy is XOR-3-2-128k, then stop 3 datanodes > which were used by the block. With the following op(read the file), the > exception message was incomplete, because of the class of LocatedBlocks's > info was not displayed complete. > > {color:#707070}hadoop@EC102:/home/lufei> hadoop fs -get > /lufei/fsimage_00268172191_140 test112{color} > {color:#707070}get: 3 missing blocks, the stripe is: AlignedStripe(Offset=0, > length=131072, fetchedChunksNum=0, missingChunksNum=3); locatedBlocks is: > {color:#d04437}LocatedBlocks{{color}{color} > {color:#707070}hadoop@EC102:/home/lufei>{color} -- 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-13232) RBF: ConnectionPool should return first usable connection
[ https://issues.apache.org/jira/browse/HDFS-13232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390388#comment-16390388 ] Wei Yan commented on HDFS-13232: Thanks [~elgoiri] > RBF: ConnectionPool should return first usable connection > - > > Key: HDFS-13232 > URL: https://issues.apache.org/jira/browse/HDFS-13232 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Ekanth S >Priority: Minor > > In current ConnectionPool.getConnection(), it will return the first active > connection: > {code:java} > for (int i=0; i int index = (threadIndex + i) % size; > conn = tmpConnections.get(index); > if (conn != null && !conn.isUsable()) { > return conn; > } > } > {code} > Here "!conn.isUsable()" should be "conn.isUsable()". -- 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] [Assigned] (HDFS-13232) RBF: ConnectionPool should return first usable connection
[ https://issues.apache.org/jira/browse/HDFS-13232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Ekanth S reassigned HDFS-13232: --- Assignee: Ekanth S (was: Wei Yan) > RBF: ConnectionPool should return first usable connection > - > > Key: HDFS-13232 > URL: https://issues.apache.org/jira/browse/HDFS-13232 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Ekanth S >Priority: Minor > > In current ConnectionPool.getConnection(), it will return the first active > connection: > {code:java} > for (int i=0; i int index = (threadIndex + i) % size; > conn = tmpConnections.get(index); > if (conn != null && !conn.isUsable()) { > return conn; > } > } > {code} > Here "!conn.isUsable()" should be "conn.isUsable()". -- 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-13232) RBF: ConnectionPool should return first usable connection
[ https://issues.apache.org/jira/browse/HDFS-13232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390385#comment-16390385 ] Íñigo Goiri commented on HDFS-13232: Added, he should be able to assign himself to JIRAs now. > RBF: ConnectionPool should return first usable connection > - > > Key: HDFS-13232 > URL: https://issues.apache.org/jira/browse/HDFS-13232 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Wei Yan >Priority: Minor > > In current ConnectionPool.getConnection(), it will return the first active > connection: > {code:java} > for (int i=0; i int index = (threadIndex + i) % size; > conn = tmpConnections.get(index); > if (conn != null && !conn.isUsable()) { > return conn; > } > } > {code} > Here "!conn.isUsable()" should be "conn.isUsable()". -- 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-13232) RBF: ConnectionPool should return first usable connection
[ https://issues.apache.org/jira/browse/HDFS-13232?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390380#comment-16390380 ] Wei Yan commented on HDFS-13232: [~elgoiri] could u help add [~ekanth] to the contributor list? I think I don't have permission to do that. He is also from my team. > RBF: ConnectionPool should return first usable connection > - > > Key: HDFS-13232 > URL: https://issues.apache.org/jira/browse/HDFS-13232 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Wei Yan >Priority: Minor > > In current ConnectionPool.getConnection(), it will return the first active > connection: > {code:java} > for (int i=0; i int index = (threadIndex + i) % size; > conn = tmpConnections.get(index); > if (conn != null && !conn.isUsable()) { > return conn; > } > } > {code} > Here "!conn.isUsable()" should be "conn.isUsable()". -- 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] [Assigned] (HDFS-13232) RBF: ConnectionPool should return first usable connection
[ https://issues.apache.org/jira/browse/HDFS-13232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Wei Yan reassigned HDFS-13232: -- Assignee: Wei Yan > RBF: ConnectionPool should return first usable connection > - > > Key: HDFS-13232 > URL: https://issues.apache.org/jira/browse/HDFS-13232 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Assignee: Wei Yan >Priority: Minor > > In current ConnectionPool.getConnection(), it will return the first active > connection: > {code:java} > for (int i=0; i int index = (threadIndex + i) % size; > conn = tmpConnections.get(index); > if (conn != null && !conn.isUsable()) { > return conn; > } > } > {code} > Here "!conn.isUsable()" should be "conn.isUsable()". -- 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] [Assigned] (HDFS-13232) RBF: ConnectionPool should return first usable connection
[ https://issues.apache.org/jira/browse/HDFS-13232?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Wei Yan reassigned HDFS-13232: -- Assignee: (was: Wei Yan) > RBF: ConnectionPool should return first usable connection > - > > Key: HDFS-13232 > URL: https://issues.apache.org/jira/browse/HDFS-13232 > Project: Hadoop HDFS > Issue Type: Sub-task >Reporter: Wei Yan >Priority: Minor > > In current ConnectionPool.getConnection(), it will return the first active > connection: > {code:java} > for (int i=0; i int index = (threadIndex + i) % size; > conn = tmpConnections.get(index); > if (conn != null && !conn.isUsable()) { > return conn; > } > } > {code} > Here "!conn.isUsable()" should be "conn.isUsable()". -- 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] [Updated] (HDFS-13225) StripeReader#checkMissingBlocks() 's IOException info is incomplete
[ https://issues.apache.org/jira/browse/HDFS-13225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Hanisha Koneru updated HDFS-13225: -- Resolution: Fixed Status: Resolved (was: Patch Available) > StripeReader#checkMissingBlocks() 's IOException info is incomplete > --- > > Key: HDFS-13225 > URL: https://issues.apache.org/jira/browse/HDFS-13225 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.1.0, 3.2.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Fix For: 3.1.0, 3.0.2, 3.2.0 > > Attachments: HDFS-13225.001.patch, HDFS-13225.002.patch > > > When the file's ErasureCodingPolicy is XOR-3-2-128k, then stop 3 datanodes > which were used by the block. With the following op(read the file), the > exception message was incomplete, because of the class of LocatedBlocks's > info was not displayed complete. > > {color:#707070}hadoop@EC102:/home/lufei> hadoop fs -get > /lufei/fsimage_00268172191_140 test112{color} > {color:#707070}get: 3 missing blocks, the stripe is: AlignedStripe(Offset=0, > length=131072, fetchedChunksNum=0, missingChunksNum=3); locatedBlocks is: > {color:#d04437}LocatedBlocks{{color}{color} > {color:#707070}hadoop@EC102:/home/lufei>{color} -- 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] [Updated] (HDFS-13225) StripeReader#checkMissingBlocks() 's IOException info is incomplete
[ https://issues.apache.org/jira/browse/HDFS-13225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Hanisha Koneru updated HDFS-13225: -- Fix Version/s: 3.2.0 3.0.2 > StripeReader#checkMissingBlocks() 's IOException info is incomplete > --- > > Key: HDFS-13225 > URL: https://issues.apache.org/jira/browse/HDFS-13225 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.1.0, 3.2.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Fix For: 3.1.0, 3.0.2, 3.2.0 > > Attachments: HDFS-13225.001.patch, HDFS-13225.002.patch > > > When the file's ErasureCodingPolicy is XOR-3-2-128k, then stop 3 datanodes > which were used by the block. With the following op(read the file), the > exception message was incomplete, because of the class of LocatedBlocks's > info was not displayed complete. > > {color:#707070}hadoop@EC102:/home/lufei> hadoop fs -get > /lufei/fsimage_00268172191_140 test112{color} > {color:#707070}get: 3 missing blocks, the stripe is: AlignedStripe(Offset=0, > length=131072, fetchedChunksNum=0, missingChunksNum=3); locatedBlocks is: > {color:#d04437}LocatedBlocks{{color}{color} > {color:#707070}hadoop@EC102:/home/lufei>{color} -- 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] [Updated] (HDFS-13225) StripeReader#checkMissingBlocks() 's IOException info is incomplete
[ https://issues.apache.org/jira/browse/HDFS-13225?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Hanisha Koneru updated HDFS-13225: -- Fix Version/s: 3.1.0 > StripeReader#checkMissingBlocks() 's IOException info is incomplete > --- > > Key: HDFS-13225 > URL: https://issues.apache.org/jira/browse/HDFS-13225 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.1.0, 3.2.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Fix For: 3.1.0 > > Attachments: HDFS-13225.001.patch, HDFS-13225.002.patch > > > When the file's ErasureCodingPolicy is XOR-3-2-128k, then stop 3 datanodes > which were used by the block. With the following op(read the file), the > exception message was incomplete, because of the class of LocatedBlocks's > info was not displayed complete. > > {color:#707070}hadoop@EC102:/home/lufei> hadoop fs -get > /lufei/fsimage_00268172191_140 test112{color} > {color:#707070}get: 3 missing blocks, the stripe is: AlignedStripe(Offset=0, > length=131072, fetchedChunksNum=0, missingChunksNum=3); locatedBlocks is: > {color:#d04437}LocatedBlocks{{color}{color} > {color:#707070}hadoop@EC102:/home/lufei>{color} -- 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-13225) StripeReader#checkMissingBlocks() 's IOException info is incomplete
[ https://issues.apache.org/jira/browse/HDFS-13225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390344#comment-16390344 ] Hanisha Koneru commented on HDFS-13225: --- Thanks for the contribution [~figo]. Committed to trunk, branch-3.1 and branch-3.0. > StripeReader#checkMissingBlocks() 's IOException info is incomplete > --- > > Key: HDFS-13225 > URL: https://issues.apache.org/jira/browse/HDFS-13225 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.1.0, 3.2.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Attachments: HDFS-13225.001.patch, HDFS-13225.002.patch > > > When the file's ErasureCodingPolicy is XOR-3-2-128k, then stop 3 datanodes > which were used by the block. With the following op(read the file), the > exception message was incomplete, because of the class of LocatedBlocks's > info was not displayed complete. > > {color:#707070}hadoop@EC102:/home/lufei> hadoop fs -get > /lufei/fsimage_00268172191_140 test112{color} > {color:#707070}get: 3 missing blocks, the stripe is: AlignedStripe(Offset=0, > length=131072, fetchedChunksNum=0, missingChunksNum=3); locatedBlocks is: > {color:#d04437}LocatedBlocks{{color}{color} > {color:#707070}hadoop@EC102:/home/lufei>{color} -- 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-13225) StripeReader#checkMissingBlocks() 's IOException info is incomplete
[ https://issues.apache.org/jira/browse/HDFS-13225?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390329#comment-16390329 ] Hanisha Koneru commented on HDFS-13225: --- Patch v02 LGTM. +1. > StripeReader#checkMissingBlocks() 's IOException info is incomplete > --- > > Key: HDFS-13225 > URL: https://issues.apache.org/jira/browse/HDFS-13225 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, hdfs-client >Affects Versions: 3.1.0, 3.2.0 >Reporter: lufei >Assignee: lufei >Priority: Major > Attachments: HDFS-13225.001.patch, HDFS-13225.002.patch > > > When the file's ErasureCodingPolicy is XOR-3-2-128k, then stop 3 datanodes > which were used by the block. With the following op(read the file), the > exception message was incomplete, because of the class of LocatedBlocks's > info was not displayed complete. > > {color:#707070}hadoop@EC102:/home/lufei> hadoop fs -get > /lufei/fsimage_00268172191_140 test112{color} > {color:#707070}get: 3 missing blocks, the stripe is: AlignedStripe(Offset=0, > length=131072, fetchedChunksNum=0, missingChunksNum=3); locatedBlocks is: > {color:#d04437}LocatedBlocks{{color}{color} > {color:#707070}hadoop@EC102:/home/lufei>{color} -- 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] [Updated] (HDFS-13239) Fix non-empty dir warning message when setting default EC policy
[ https://issues.apache.org/jira/browse/HDFS-13239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Bharat Viswanadham updated HDFS-13239: -- Status: Patch Available (was: In Progress) > Fix non-empty dir warning message when setting default EC policy > > > Key: HDFS-13239 > URL: https://issues.apache.org/jira/browse/HDFS-13239 > Project: Hadoop HDFS > Issue Type: Bug >Reporter: Hanisha Koneru >Assignee: Bharat Viswanadham >Priority: Minor > Attachments: HDFS-13239.00.patch > > > When EC policy is set on a non-empty directory, the following warning message > is given: > {code} > $hdfs ec -setPolicy -policy RS-6-3-1024k -path /ec1 > Warning: setting erasure coding policy on a non-empty directory will not > automatically convert existing files to RS-6-3-1024k > {code} > When we do not specify the -policy parameter when setting EC policy on a > directory, it takes the default EC policy. Setting default EC policy in this > way on a non-empty directory gives the following warning message: > {code} > $hdfs ec -setPolicy -path /ec2 > Warning: setting erasure coding policy on a non-empty directory will not > automatically convert existing files to null > {code} > Notice that the warning message in the 2nd case has the ecPolicy name shown > as null. We should instead give the default EC policy name in this message. -- 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] [Updated] (HDFS-13239) Fix non-empty dir warning message when setting default EC policy
[ https://issues.apache.org/jira/browse/HDFS-13239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Bharat Viswanadham updated HDFS-13239: -- Attachment: HDFS-13239.00.patch > Fix non-empty dir warning message when setting default EC policy > > > Key: HDFS-13239 > URL: https://issues.apache.org/jira/browse/HDFS-13239 > Project: Hadoop HDFS > Issue Type: Bug >Reporter: Hanisha Koneru >Assignee: Bharat Viswanadham >Priority: Minor > Attachments: HDFS-13239.00.patch > > > When EC policy is set on a non-empty directory, the following warning message > is given: > {code} > $hdfs ec -setPolicy -policy RS-6-3-1024k -path /ec1 > Warning: setting erasure coding policy on a non-empty directory will not > automatically convert existing files to RS-6-3-1024k > {code} > When we do not specify the -policy parameter when setting EC policy on a > directory, it takes the default EC policy. Setting default EC policy in this > way on a non-empty directory gives the following warning message: > {code} > $hdfs ec -setPolicy -path /ec2 > Warning: setting erasure coding policy on a non-empty directory will not > automatically convert existing files to null > {code} > Notice that the warning message in the 2nd case has the ecPolicy name shown > as null. We should instead give the default EC policy name in this message. -- 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] [Work started] (HDFS-13239) Fix non-empty dir warning message when setting default EC policy
[ https://issues.apache.org/jira/browse/HDFS-13239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Work on HDFS-13239 started by Bharat Viswanadham. - > Fix non-empty dir warning message when setting default EC policy > > > Key: HDFS-13239 > URL: https://issues.apache.org/jira/browse/HDFS-13239 > Project: Hadoop HDFS > Issue Type: Bug >Reporter: Hanisha Koneru >Assignee: Bharat Viswanadham >Priority: Minor > > When EC policy is set on a non-empty directory, the following warning message > is given: > {code} > $hdfs ec -setPolicy -policy RS-6-3-1024k -path /ec1 > Warning: setting erasure coding policy on a non-empty directory will not > automatically convert existing files to RS-6-3-1024k > {code} > When we do not specify the -policy parameter when setting EC policy on a > directory, it takes the default EC policy. Setting default EC policy in this > way on a non-empty directory gives the following warning message: > {code} > $hdfs ec -setPolicy -path /ec2 > Warning: setting erasure coding policy on a non-empty directory will not > automatically convert existing files to null > {code} > Notice that the warning message in the 2nd case has the ecPolicy name shown > as null. We should instead give the default EC policy name in this message. -- 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-13234) Remove renew configuration instance in ConfiguredFailoverProxyProvider and reduce memory footprint for client
[ https://issues.apache.org/jira/browse/HDFS-13234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390298#comment-16390298 ] Kihwal Lee commented on HDFS-13234: --- New conf objects are created to prevent unintended conf update propagation. If we have an overlay config feature, we could achieve the same thing without duplicating the entire conf object. Configuration has something overlay-like, but I was told it does not work the way we want. > Remove renew configuration instance in ConfiguredFailoverProxyProvider and > reduce memory footprint for client > - > > Key: HDFS-13234 > URL: https://issues.apache.org/jira/browse/HDFS-13234 > Project: Hadoop HDFS > Issue Type: Improvement > Components: fs, ha, hdfs-client >Reporter: He Xiaoqiao >Priority: Major > Attachments: HDFS-13234.001.patch > > > The memory footprint of #DFSClient is very considerable in some special > scenario since there are many #Configuration instances and occupy much memory > resource (In an extreme case, org.apache.hadoop.conf.Configuration occupies > over 600MB we meet under HDFS Federation an HA with QJM and there are dozens > of NameNodes). I think some new Configuration instance is not necessary. Such > as #ConfiguredFailoverProxyProvider initialization. > {code:java} > public ConfiguredFailoverProxyProvider(Configuration conf, URI uri, > Class xface, HAProxyFactory factory) { > this.xface = xface; > this.conf = new Configuration(conf); > .. > } > {code} -- 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-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390272#comment-16390272 ] Dennis Huo commented on HDFS-13056: --- Good catch, thanks for the report, [~ajayydv]. I actually do remember going over that shared precondition check and intentionally not supporting it at the time since bytesPerCRC propagates out and gets used in preserving file attributes (there's a section on file-attribute propagation in the design doc), but now on second thought, since this constraint is only being imposed in the client-side (doesn't have the same issue in BlockChecksumHelper), it seems simple enough to also support mixed-bpc files (though, it's still intended to *not* support mixed-checksum-type files where some blocks are CRC32 and others CRC32C). I'll still spit out a warning though since the best we can do in this case is arbitrarily choose which bpc to default to when attribute preservation includes bpc. This will also have the interesting side-effect that whereas distcp currently will fail to copy source files with mixed BPC if FileAttribute.CHECKSUMTYPE is included as an attribute to preserve, now with COMPOSITE_CRC those distcp jobs will succeed, although the mixed-bpc characteristics themselves will not actually be preserved. > Expose file-level composite CRCs in HDFS which are comparable across > different instances/layouts > > > Key: HDFS-13056 > URL: https://issues.apache.org/jira/browse/HDFS-13056 > Project: Hadoop HDFS > Issue Type: New Feature > Components: datanode, distcp, erasure-coding, federation, hdfs >Affects Versions: 3.0.0 >Reporter: Dennis Huo >Assignee: Dennis Huo >Priority: Major > Attachments: HDFS-13056-branch-2.8.001.patch, > HDFS-13056-branch-2.8.002.patch, HDFS-13056-branch-2.8.003.patch, > HDFS-13056-branch-2.8.004.patch, HDFS-13056-branch-2.8.poc1.patch, > HDFS-13056.001.patch, HDFS-13056.002.patch, HDFS-13056.003.patch, > HDFS-13056.003.patch, HDFS-13056.004.patch, HDFS-13056.005.patch, > HDFS-13056.006.patch, HDFS-13056.007.patch, > Reference_only_zhen_PPOC_hadoop2.6.X.diff, hdfs-file-composite-crc32-v1.pdf, > hdfs-file-composite-crc32-v2.pdf, hdfs-file-composite-crc32-v3.pdf > > > FileChecksum was first introduced in > [https://issues-test.apache.org/jira/browse/HADOOP-3981] and ever since then > has remained defined as MD5-of-MD5-of-CRC, where per-512-byte chunk CRCs are > already stored as part of datanode metadata, and the MD5 approach is used to > compute an aggregate value in a distributed manner, with individual datanodes > computing the MD5-of-CRCs per-block in parallel, and the HDFS client > computing the second-level MD5. > > A shortcoming of this approach which is often brought up is the fact that > this FileChecksum is sensitive to the internal block-size and chunk-size > configuration, and thus different HDFS files with different block/chunk > settings cannot be compared. More commonly, one might have different HDFS > clusters which use different block sizes, in which case any data migration > won't be able to use the FileChecksum for distcp's rsync functionality or for > verifying end-to-end data integrity (on top of low-level data integrity > checks applied at data transfer time). > > This was also revisited in https://issues.apache.org/jira/browse/HDFS-8430 > during the addition of checksum support for striped erasure-coded files; > while there was some discussion of using CRC composability, it still > ultimately settled on hierarchical MD5 approach, which also adds the problem > that checksums of basic replicated files are not comparable to striped files. > > This feature proposes to add a "COMPOSITE-CRC" FileChecksum type which uses > CRC composition to remain completely chunk/block agnostic, and allows > comparison between striped vs replicated files, between different HDFS > instances, and possible even between HDFS and other external storage systems. > This feature can also be added in-place to be compatible with existing block > metadata, and doesn't need to change the normal path of chunk verification, > so is minimally invasive. This also means even large preexisting HDFS > deployments could adopt this feature to retroactively sync data. A detailed > design document can be found here: > https://storage.googleapis.com/dennishuo/hdfs-file-composite-crc32-v1.pdf -- 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-13176) WebHdfs file path gets truncated when having semicolon (;) inside
[ https://issues.apache.org/jira/browse/HDFS-13176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390210#comment-16390210 ] Hudson commented on HDFS-13176: --- SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #13790 (See [https://builds.apache.org/job/Hadoop-trunk-Commit/13790/]) HDFS-13176. WebHdfs file path gets truncated when having semicolon (;) (mackrorysd: rev 46d29e3d7ee8dc9bb1818b886d9cc5336b1d67a4) * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/web/resources/NamenodeWebHdfsMethods.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/web/webhdfs/WebHdfsHandler.java * (edit) hadoop-hdfs-project/hadoop-hdfs-client/src/main/java/org/apache/hadoop/hdfs/web/WebHdfsFileSystem.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/web/TestWebHdfsUrl.java > WebHdfs file path gets truncated when having semicolon (;) inside > - > > Key: HDFS-13176 > URL: https://issues.apache.org/jira/browse/HDFS-13176 > Project: Hadoop HDFS > Issue Type: Bug > Components: webhdfs >Affects Versions: 3.0.0 >Reporter: Zsolt Venczel >Assignee: Zsolt Venczel >Priority: Major > Attachments: HDFS-13176.01.patch, HDFS-13176.02.patch, > TestWebHdfsUrl.testWebHdfsSpecialCharacterFile.patch > > > Find attached a patch having a test case that tries to reproduce the problem. -- 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-13176) WebHdfs file path gets truncated when having semicolon (;) inside
[ https://issues.apache.org/jira/browse/HDFS-13176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390173#comment-16390173 ] Sean Mackrory commented on HDFS-13176: -- I've pushed this to trunk. This would be good in branch-2, as well. It has a fairly trivial conflict thought, if you want to post a patch applied to branch-2 I can commit it - am about to run out for an errand. > WebHdfs file path gets truncated when having semicolon (;) inside > - > > Key: HDFS-13176 > URL: https://issues.apache.org/jira/browse/HDFS-13176 > Project: Hadoop HDFS > Issue Type: Bug > Components: webhdfs >Affects Versions: 3.0.0 >Reporter: Zsolt Venczel >Assignee: Zsolt Venczel >Priority: Major > Attachments: HDFS-13176.01.patch, HDFS-13176.02.patch, > TestWebHdfsUrl.testWebHdfsSpecialCharacterFile.patch > > > Find attached a patch having a test case that tries to reproduce the problem. -- 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] [Comment Edited] (HDFS-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390170#comment-16390170 ] Ajay Kumar edited comment on HDFS-13056 at 3/7/18 8:34 PM: --- Hi [~dennishuo], Below test case fails with latest patch. # hdfs client creates a new file with default "dfs.bytes-per-checksum" and "dfs.checksum.combine.mode=COMPOSITE_CRC". # Client appends random length data to same files with different value of "dfs.bytes-per-checksum" and {{CreateFlag.NEW_BLOCK}} flag. # Fetch the checksum for this given file. Checksum retrievel fails with below exception: {code}java.io.IOException: Byte-per-checksum not matched: bpc=256 but bytesPerCRC=128 at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.tryDatanode(FileChecksumHelper.java:490) at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.checksumBlock(FileChecksumHelper.java:421) at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.checksumBlocks(FileChecksumHelper.java:394) at org.apache.hadoop.hdfs.FileChecksumHelper$FileChecksumComputer.compute(FileChecksumHelper.java:251) at org.apache.hadoop.hdfs.DFSClient.getFileChecksumInternal(DFSClient.java:1778) at org.apache.hadoop.hdfs.DFSClient.getFileChecksumWithCombineMode(DFSClient.java:1797) at org.apache.hadoop.hdfs.DistributedFileSystem$33.doCall(DistributedFileSystem.java:1683) at org.apache.hadoop.hdfs.DistributedFileSystem$33.doCall(DistributedFileSystem.java:1680) at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) at org.apache.hadoop.hdfs.DistributedFileSystem.getFileChecksum(DistributedFileSystem.java:1692) at org.apache.hadoop.fs.shell.Display$Checksum.processPath(Display.java:193) at org.apache.hadoop.fs.shell.Command.processPaths(Command.java:331) at org.apache.hadoop.fs.shell.Command.processPathArgument(Command.java:303) at org.apache.hadoop.fs.shell.Command.processArgument(Command.java:285) at org.apache.hadoop.fs.shell.Command.processArguments(Command.java:269) at org.apache.hadoop.fs.shell.FsCommand.processRawArguments(FsCommand.java:120) at org.apache.hadoop.fs.shell.Command.run(Command.java:176) at org.apache.hadoop.fs.FsShell.run(FsShell.java:328) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:90) at org.apache.hadoop.fs.FsShell.main(FsShell.java:391) checksum: Fail to get block MD5 for LocatedBlock{BP-589677616-192.168.1.149-1520443372952:blk_1073743641_5922; getBlockSize()=89; corrupt=false; offset=275048; locs=[DatanodeInfoWithStorage[127.0.0.1:9866,D{code} Seems this is expected scenario in patch but this breaks use case when client appends an hdfs file with different value of {{dfs.bytes-per-checksum}}. was (Author: ajayydv): Hi [~dennishuo], Below test case fails with latest patch. # hdfs client creates a new file with default "dfs.bytes-per-checksum" and "dfs.checksum.combine.mode=COMPOSITE_CRC". # Client appends same files with different value of "dfs.bytes-per-checksum" and {{CreateFlag.NEW_BLOCK}} flag. # Fetch the checksum for this given file. Checksum retrievel fails with below exception: {code}java.io.IOException: Byte-per-checksum not matched: bpc=256 but bytesPerCRC=128 at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.tryDatanode(FileChecksumHelper.java:490) at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.checksumBlock(FileChecksumHelper.java:421) at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.checksumBlocks(FileChecksumHelper.java:394) at org.apache.hadoop.hdfs.FileChecksumHelper$FileChecksumComputer.compute(FileChecksumHelper.java:251) at org.apache.hadoop.hdfs.DFSClient.getFileChecksumInternal(DFSClient.java:1778) at org.apache.hadoop.hdfs.DFSClient.getFileChecksumWithCombineMode(DFSClient.java:1797) at org.apache.hadoop.hdfs.DistributedFileSystem$33.doCall(DistributedFileSystem.java:1683) at org.apache.hadoop.hdfs.DistributedFileSystem$33.doCall(DistributedFileSystem.java:1680) at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) at org.apache.hadoop.hdfs.DistributedFileSystem.getFileChecksum(DistributedFileSystem.java:1692) at org.apache.hadoop.fs.shell.Display$Checksum.processPath(Display.java:193) at org.apache.hadoop.fs.shell.Command.processPaths(Command.java:331) at org.apache.hadoop.fs.shell.Command.processPathArgument(Command.java:303) at org.apache.hadoop.fs.shell.Command.processArgument(Command.java:285) at org.apache.hadoop
[jira] [Commented] (HDFS-13056) Expose file-level composite CRCs in HDFS which are comparable across different instances/layouts
[ https://issues.apache.org/jira/browse/HDFS-13056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390170#comment-16390170 ] Ajay Kumar commented on HDFS-13056: --- Hi [~dennishuo], Below test case fails with latest patch. # hdfs client creates a new file with default "dfs.bytes-per-checksum" and "dfs.checksum.combine.mode=COMPOSITE_CRC". # Client appends same files with different value of "dfs.bytes-per-checksum" and {{CreateFlag.NEW_BLOCK}} flag. # Fetch the checksum for this given file. Checksum retrievel fails with below exception: {code}java.io.IOException: Byte-per-checksum not matched: bpc=256 but bytesPerCRC=128 at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.tryDatanode(FileChecksumHelper.java:490) at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.checksumBlock(FileChecksumHelper.java:421) at org.apache.hadoop.hdfs.FileChecksumHelper$ReplicatedFileChecksumComputer.checksumBlocks(FileChecksumHelper.java:394) at org.apache.hadoop.hdfs.FileChecksumHelper$FileChecksumComputer.compute(FileChecksumHelper.java:251) at org.apache.hadoop.hdfs.DFSClient.getFileChecksumInternal(DFSClient.java:1778) at org.apache.hadoop.hdfs.DFSClient.getFileChecksumWithCombineMode(DFSClient.java:1797) at org.apache.hadoop.hdfs.DistributedFileSystem$33.doCall(DistributedFileSystem.java:1683) at org.apache.hadoop.hdfs.DistributedFileSystem$33.doCall(DistributedFileSystem.java:1680) at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81) at org.apache.hadoop.hdfs.DistributedFileSystem.getFileChecksum(DistributedFileSystem.java:1692) at org.apache.hadoop.fs.shell.Display$Checksum.processPath(Display.java:193) at org.apache.hadoop.fs.shell.Command.processPaths(Command.java:331) at org.apache.hadoop.fs.shell.Command.processPathArgument(Command.java:303) at org.apache.hadoop.fs.shell.Command.processArgument(Command.java:285) at org.apache.hadoop.fs.shell.Command.processArguments(Command.java:269) at org.apache.hadoop.fs.shell.FsCommand.processRawArguments(FsCommand.java:120) at org.apache.hadoop.fs.shell.Command.run(Command.java:176) at org.apache.hadoop.fs.FsShell.run(FsShell.java:328) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:76) at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:90) at org.apache.hadoop.fs.FsShell.main(FsShell.java:391) checksum: Fail to get block MD5 for LocatedBlock{BP-589677616-192.168.1.149-1520443372952:blk_1073743641_5922; getBlockSize()=89; corrupt=false; offset=275048; locs=[DatanodeInfoWithStorage[127.0.0.1:9866,D{code} Seems this is expected scenario in patch but this breaks use case when client appends an hdfs file with different value of {{dfs.bytes-per-checksum}}. > Expose file-level composite CRCs in HDFS which are comparable across > different instances/layouts > > > Key: HDFS-13056 > URL: https://issues.apache.org/jira/browse/HDFS-13056 > Project: Hadoop HDFS > Issue Type: New Feature > Components: datanode, distcp, erasure-coding, federation, hdfs >Affects Versions: 3.0.0 >Reporter: Dennis Huo >Assignee: Dennis Huo >Priority: Major > Attachments: HDFS-13056-branch-2.8.001.patch, > HDFS-13056-branch-2.8.002.patch, HDFS-13056-branch-2.8.003.patch, > HDFS-13056-branch-2.8.004.patch, HDFS-13056-branch-2.8.poc1.patch, > HDFS-13056.001.patch, HDFS-13056.002.patch, HDFS-13056.003.patch, > HDFS-13056.003.patch, HDFS-13056.004.patch, HDFS-13056.005.patch, > HDFS-13056.006.patch, HDFS-13056.007.patch, > Reference_only_zhen_PPOC_hadoop2.6.X.diff, hdfs-file-composite-crc32-v1.pdf, > hdfs-file-composite-crc32-v2.pdf, hdfs-file-composite-crc32-v3.pdf > > > FileChecksum was first introduced in > [https://issues-test.apache.org/jira/browse/HADOOP-3981] and ever since then > has remained defined as MD5-of-MD5-of-CRC, where per-512-byte chunk CRCs are > already stored as part of datanode metadata, and the MD5 approach is used to > compute an aggregate value in a distributed manner, with individual datanodes > computing the MD5-of-CRCs per-block in parallel, and the HDFS client > computing the second-level MD5. > > A shortcoming of this approach which is often brought up is the fact that > this FileChecksum is sensitive to the internal block-size and chunk-size > configuration, and thus different HDFS files with different block/chunk > settings cannot be compared. More commonly, one might have different HDFS > clusters which use different block sizes, in which case any data migration > won't be able to use the FileCh
[jira] [Commented] (HDFS-13241) RBF: TestRouterSafemode failed if the port 8888 is in use
[ https://issues.apache.org/jira/browse/HDFS-13241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390161#comment-16390161 ] genericqa commented on HDFS-13241: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 46s{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} 17m 5s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 6s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 8s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 11s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 11m 22s{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} 1m 51s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 54s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 1s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 52s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 52s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 44s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 0m 59s{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 45s{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} 3m 3s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 14s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red}149m 56s{color} | {color:red} hadoop-hdfs in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 21s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}204m 56s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hdfs.TestDecommissionWithStriped | | | hadoop.hdfs.server.namenode.ha.TestRetryCacheWithHA | | | hadoop.hdfs.web.TestWebHdfsTimeouts | | | hadoop.hdfs.TestDFSStripedOutputStreamWithFailure | | | hadoop.hdfs.server.namenode.TestNameNodeMXBean | | | hadoop.hdfs.TestReadStripedFileWithMissingBlocks | | | hadoop.hdfs.server.federation.router.TestRouterNamenodeMonitoring | \\ \\ || Subsystem || Report/Notes || | Docker | Client=17.05.0-ce Server=17.05.0-ce Image:yetus/hadoop:d4cc50f | | JIRA Issue | HDFS-13241 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12913355/HDFS-13241.001.patch | | Optional Tests | asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle | | uname | Linux 7064b8c1050f 4.4.0-64-generic #85-Ubuntu SMP Mon Feb 20 11:50:30 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /testptch/patchprocess/precommit/personality/provided.sh | | git revision | trunk / d69b31f | | maven | version: Apache Maven 3.3.9 | | Default Java | 1.8.0_151 | | findbugs | v3.1.0-RC1 | | unit | https://builds.apache.org/job/PreCommit-HDFS-Build/23334/artifact/out/patch-unit-hadoop-hdfs-project_hadoop-hdfs.txt | | Test Results | https://builds.apache.org/
[jira] [Commented] (HDFS-13234) Remove renew configuration instance in ConfiguredFailoverProxyProvider and reduce memory footprint for client
[ https://issues.apache.org/jira/browse/HDFS-13234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390147#comment-16390147 ] Kihwal Lee commented on HDFS-13234: --- bq. Configuration occupies over 600MB How big is a single instance in your use case? Bloated conf in dfs client is obviously a serious issue, but it can create bigger issues in apps/jobs. Sometimes a conf can get embedded in another conf. Avoiding unnecessarily duplicated confs is a good thing, but looking into what is causing the bloat and fixing that will also be important. > Remove renew configuration instance in ConfiguredFailoverProxyProvider and > reduce memory footprint for client > - > > Key: HDFS-13234 > URL: https://issues.apache.org/jira/browse/HDFS-13234 > Project: Hadoop HDFS > Issue Type: Improvement > Components: fs, ha, hdfs-client >Reporter: He Xiaoqiao >Priority: Major > Attachments: HDFS-13234.001.patch > > > The memory footprint of #DFSClient is very considerable in some special > scenario since there are many #Configuration instances and occupy much memory > resource (In an extreme case, org.apache.hadoop.conf.Configuration occupies > over 600MB we meet under HDFS Federation an HA with QJM and there are dozens > of NameNodes). I think some new Configuration instance is not necessary. Such > as #ConfiguredFailoverProxyProvider initialization. > {code:java} > public ConfiguredFailoverProxyProvider(Configuration conf, URI uri, > Class xface, HAProxyFactory factory) { > this.xface = xface; > this.conf = new Configuration(conf); > .. > } > {code} -- 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-11394) Add method for getting erasure coding policy through WebHDFS
[ https://issues.apache.org/jira/browse/HDFS-11394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390128#comment-16390128 ] Hanisha Koneru commented on HDFS-11394: --- I have posted patch v05 to move this forward. I am adding the ecPolicy name to the FileStatus Json when ecBit is true. > Add method for getting erasure coding policy through WebHDFS > - > > Key: HDFS-11394 > URL: https://issues.apache.org/jira/browse/HDFS-11394 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, namenode >Reporter: Kai Sasaki >Assignee: Kai Sasaki >Priority: Major > Labels: hdfs-ec-3.0-nice-to-have > Attachments: HDFS-11394.005.patch, HDFS-11394.01.patch, > HDFS-11394.02.patch, HDFS-11394.03.patch, HDFS-11394.04.patch > > > We can expose erasure coding policy by erasure coded directory through > WebHDFS method as well as storage policy. This information can be used by > NameNode Web UI and show the detail of erasure coded directories. > see: HDFS-8196 -- 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] [Updated] (HDFS-11394) Add method for getting erasure coding policy through WebHDFS
[ https://issues.apache.org/jira/browse/HDFS-11394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Hanisha Koneru updated HDFS-11394: -- Attachment: HDFS-11394.005.patch > Add method for getting erasure coding policy through WebHDFS > - > > Key: HDFS-11394 > URL: https://issues.apache.org/jira/browse/HDFS-11394 > Project: Hadoop HDFS > Issue Type: Improvement > Components: erasure-coding, namenode >Reporter: Kai Sasaki >Assignee: Kai Sasaki >Priority: Major > Labels: hdfs-ec-3.0-nice-to-have > Attachments: HDFS-11394.005.patch, HDFS-11394.01.patch, > HDFS-11394.02.patch, HDFS-11394.03.patch, HDFS-11394.04.patch > > > We can expose erasure coding policy by erasure coded directory through > WebHDFS method as well as storage policy. This information can be used by > NameNode Web UI and show the detail of erasure coded directories. > see: HDFS-8196 -- 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-13109) Support fully qualified hdfs path in EZ commands
[ https://issues.apache.org/jira/browse/HDFS-13109?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390109#comment-16390109 ] Hanisha Koneru commented on HDFS-13109: --- Thanks [~xyao] for committing the patch and all for the reviews. > Support fully qualified hdfs path in EZ commands > > > Key: HDFS-13109 > URL: https://issues.apache.org/jira/browse/HDFS-13109 > Project: Hadoop HDFS > Issue Type: Bug > Components: hdfs >Reporter: Hanisha Koneru >Assignee: Hanisha Koneru >Priority: Major > Fix For: 3.1.0, 2.10.0, 2.9.1, 2.8.4, 3.0.2, 3.2.0 > > Attachments: HDFS-13109.001.patch, HDFS-13109.002.patch, > HDFS-13109.003.patch, HDFS-13109.004.patch, HDFS-13109.005.patch, > HDFS-13109.006.patch > > > When creating an Encryption Zone, if the fully qualified path is specified in > the path argument, it throws the following error. > {code:java} > ~$ hdfs crypto -createZone -keyName mykey1 -path hdfs://ns1/zone1 > IllegalArgumentException: hdfs://ns1/zone1 is not the root of an encryption > zone. Do you mean /zone1? > ~$ hdfs crypto -createZone -keyName mykey1 -path "hdfs://namenode:9000/zone2" > IllegalArgumentException: hdfs://namenode:9000/zone2 is not the root of an > encryption zone. Do you mean /zone2? > {code} > The EZ creation succeeds as the path is resolved in > DFS#createEncryptionZone(). But while creating the Trash directory, the path > is not resolved and it throws the above error. > A fully qualified path should be supported by {{crypto}}. -- 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-13222) Update getBlocks method to take minBlockSize in RPC calls
[ https://issues.apache.org/jira/browse/HDFS-13222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390100#comment-16390100 ] Bharat Viswanadham commented on HDFS-13222: --- Thank You [~szetszwo] for review and committing the patch. > Update getBlocks method to take minBlockSize in RPC calls > - > > Key: HDFS-13222 > URL: https://issues.apache.org/jira/browse/HDFS-13222 > Project: Hadoop HDFS > Issue Type: Improvement > Components: balancer & mover >Reporter: Bharat Viswanadham >Assignee: Bharat Viswanadham >Priority: Major > Fix For: 3.2.0 > > Attachments: HDFS-13222.00.patch, HDFS-13222.01.patch, > HDFS-13222.02.patch > > > > getBlocks Using balancer parameter is done in this Jira HDFS-9412 > > Pass the Balancer conf value from Balancer to NN via getBlocks in each RPC. > as [~szetszwo] suggested > -- 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-13222) Update getBlocks method to take minBlockSize in RPC calls
[ https://issues.apache.org/jira/browse/HDFS-13222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390098#comment-16390098 ] Hudson commented on HDFS-13222: --- SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #13788 (See [https://builds.apache.org/job/Hadoop-trunk-Commit/13788/]) HDFS-13222. Update getBlocks method to take minBlockSize in RPC calls. (szetszwo: rev 88fba00caa8c8e26f70deb9be5b534e7482620a1) * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockManager.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/protocol/NamenodeProtocol.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/proto/NamenodeProtocol.proto * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/balancer/Dispatcher.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocolPB/NamenodeProtocolTranslatorPB.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/balancer/TestBalancer.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestGetBlocks.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/protocolPB/NamenodeProtocolServerSideTranslatorPB.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNodeRpcServer.java * (edit) hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/balancer/NameNodeConnector.java > Update getBlocks method to take minBlockSize in RPC calls > - > > Key: HDFS-13222 > URL: https://issues.apache.org/jira/browse/HDFS-13222 > Project: Hadoop HDFS > Issue Type: Improvement > Components: balancer & mover >Reporter: Bharat Viswanadham >Assignee: Bharat Viswanadham >Priority: Major > Fix For: 3.2.0 > > Attachments: HDFS-13222.00.patch, HDFS-13222.01.patch, > HDFS-13222.02.patch > > > > getBlocks Using balancer parameter is done in this Jira HDFS-9412 > > Pass the Balancer conf value from Balancer to NN via getBlocks in each RPC. > as [~szetszwo] suggested > -- 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-13222) Update getBlocks method to take minBlockSize in RPC calls
[ https://issues.apache.org/jira/browse/HDFS-13222?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16390089#comment-16390089 ] Tsz Wo Nicholas Sze commented on HDFS-13222: I have committed this. Thanks, Bharat! > Update getBlocks method to take minBlockSize in RPC calls > - > > Key: HDFS-13222 > URL: https://issues.apache.org/jira/browse/HDFS-13222 > Project: Hadoop HDFS > Issue Type: Improvement > Components: balancer & mover >Reporter: Bharat Viswanadham >Assignee: Bharat Viswanadham >Priority: Major > Fix For: 3.2.0 > > Attachments: HDFS-13222.00.patch, HDFS-13222.01.patch, > HDFS-13222.02.patch > > > > getBlocks Using balancer parameter is done in this Jira HDFS-9412 > > Pass the Balancer conf value from Balancer to NN via getBlocks in each RPC. > as [~szetszwo] suggested > -- 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