[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17197259#comment-17197259 ] Hadoop QA commented on HDFS-15452: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 47s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} dupname {color} | {color:green} 0m 0s{color} | {color:green} No case conflicting files found. {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} 22m 7s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 24s{color} | {color:green} trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 19s{color} | {color:green} trunk passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01 {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 54s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 26s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 17m 52s{color} | {color:green} branch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 51s{color} | {color:green} trunk passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 34s{color} | {color:green} trunk passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01 {color} | | {color:blue}0{color} | {color:blue} spotbugs {color} | {color:blue} 3m 31s{color} | {color:blue} Used deprecated FindBugs config; considering switching to SpotBugs. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 28s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 23s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 32s{color} | {color:green} the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 32s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 13s{color} | {color:green} the patch passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01 {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 13s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 54s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 15s{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 2s{color} | {color:green} The patch has no ill-formed XML file. {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 15m 35s{color} | {color:green} patch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 52s{color} | {color:green} the patch passed with JDK Ubuntu-11.0.8+10-post-Ubuntu-0ubuntu118.04.1 {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 1m 26s{color} | {color:green} the patch passed with JDK Private Build-1.8.0_265-8u265-b01-0ubuntu2~18.04-b01 {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 3m 38s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red}107m 39s{color} | {color:red} hadoop-hdfs in the patch passed. {color} | | {color:green}+1{color}
[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17154329#comment-17154329 ] jianghua zhu commented on HDFS-15452: - OK. Thank you very much for your suggestion, [~hexiaoqiao]. > Dynamically initialize the capacity of BlocksMap > > > Key: HDFS-15452 > URL: https://issues.apache.org/jira/browse/HDFS-15452 > Project: Hadoop HDFS > Issue Type: Improvement >Affects Versions: 3.0.3 >Reporter: jianghua zhu >Assignee: jianghua zhu >Priority: Major > Attachments: HDFS-15452.001.patch > > > The default value for initializing BlocksMap in the BlockManager class is 2. > This can be set to a dynamic value. > BlockManager#BlockManager() { > .. > // Compute the map capacity by allocating 2% of total memory > blocksMap = new BlocksMap( > LightWeightGSet.computeCapacity(2.0, "BlocksMap")); > .. > } > -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17154314#comment-17154314 ] Xiaoqiao He commented on HDFS-15452: Thanks involve me here. Sorry I don't get what issues do you meet. IIUC, tuning the percentage of memory capacity will impact performance obviously (GSet collision ratio or heap occupy). I don't trace why this is 2% rather than other percentage since it is very historical logic. About patch [^HDFS-15452.001.patch], a. it is better to give value section, rather than any value will pass now. b. does `INodeMap`, `RetryCache` and `cachedBlocks` also need to config? I prefer to keep this static value, in my practice it runs well for over 600GB heap memory. I don't find any heap occupy cost or performance issue. > Dynamically initialize the capacity of BlocksMap > > > Key: HDFS-15452 > URL: https://issues.apache.org/jira/browse/HDFS-15452 > Project: Hadoop HDFS > Issue Type: Improvement >Affects Versions: 3.0.3 >Reporter: jianghua zhu >Assignee: jianghua zhu >Priority: Major > Attachments: HDFS-15452.001.patch > > > The default value for initializing BlocksMap in the BlockManager class is 2. > This can be set to a dynamic value. > BlockManager#BlockManager() { > .. > // Compute the map capacity by allocating 2% of total memory > blocksMap = new BlocksMap( > LightWeightGSet.computeCapacity(2.0, "BlocksMap")); > .. > } > -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17153711#comment-17153711 ] Hadoop QA commented on HDFS-15452: -- | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 0m 42s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:green}+1{color} | {color:green} dupname {color} | {color:green} 0m 0s{color} | {color:green} No case conflicting files found. {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} 19m 14s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 10s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 1m 2s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 17s{color} | {color:green} trunk passed {color} | | {color:green}+1{color} | {color:green} shadedclient {color} | {color:green} 16m 9s{color} | {color:green} branch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 49s{color} | {color:green} trunk passed {color} | | {color:blue}0{color} | {color:blue} spotbugs {color} | {color:blue} 2m 53s{color} | {color:blue} Used deprecated FindBugs config; considering switching to SpotBugs. {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 51s{color} | {color:green} trunk passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 1m 7s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 1m 2s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 1m 2s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 53s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} mvnsite {color} | {color:green} 1m 9s{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} 13m 48s{color} | {color:green} patch has no errors when building and testing our client artifacts. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 42s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} findbugs {color} | {color:green} 2m 54s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red} 97m 35s{color} | {color:red} hadoop-hdfs in the patch passed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 43s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black}163m 12s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | hadoop.hdfs.server.sps.TestExternalStoragePolicySatisfier | | | hadoop.hdfs.server.namenode.TestNameNodeRetryCacheMetrics | | | hadoop.hdfs.TestGetFileChecksum | | | hadoop.hdfs.server.blockmanagement.TestBlockTokenWithDFSStriped | \\ \\ || Subsystem || Report/Notes || | Docker | ClientAPI=1.40 ServerAPI=1.40 base: https://builds.apache.org/job/PreCommit-HDFS-Build/29490/artifact/out/Dockerfile | | JIRA Issue | HDFS-15452 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/13007302/HDFS-15452.001.patch | | Optional Tests | dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle xml | | uname | Linux 05532f659f8e 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | |
[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17153580#comment-17153580 ] jianghua zhu commented on HDFS-15452: - [~elgoiri], [~hexiaoqiao] , I submitted a patch file (HDFS-15452.001.patch), can you help me review it? Thanks a lot. > Dynamically initialize the capacity of BlocksMap > > > Key: HDFS-15452 > URL: https://issues.apache.org/jira/browse/HDFS-15452 > Project: Hadoop HDFS > Issue Type: Improvement >Affects Versions: 3.0.3 >Reporter: jianghua zhu >Assignee: jianghua zhu >Priority: Major > Attachments: HDFS-15452.001.patch > > > The default value for initializing BlocksMap in the BlockManager class is 2. > This can be set to a dynamic value. > BlockManager#BlockManager() { > .. > // Compute the map capacity by allocating 2% of total memory > blocksMap = new BlocksMap( > LightWeightGSet.computeCapacity(2.0, "BlocksMap")); > .. > } > -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17152451#comment-17152451 ] jianghua zhu commented on HDFS-15452: - I will try to solve this problem. > Dynamically initialize the capacity of BlocksMap > > > Key: HDFS-15452 > URL: https://issues.apache.org/jira/browse/HDFS-15452 > Project: Hadoop HDFS > Issue Type: Improvement >Affects Versions: 3.0.3 >Reporter: jianghua zhu >Assignee: jianghua zhu >Priority: Major > > The default value for initializing BlocksMap in the BlockManager class is 2. > This can be set to a dynamic value. > BlockManager#BlockManager() { > .. > // Compute the map capacity by allocating 2% of total memory > blocksMap = new BlocksMap( > LightWeightGSet.computeCapacity(2.0, "BlocksMap")); > .. > } > -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17152450#comment-17152450 ] jianghua zhu commented on HDFS-15452: - [~elgoiri] , thanks for your suggestions. When I use HDFS, I want to adjust the capacity of BlockManager#blocksMap to see what happens. However, I found that this is a constant default value, which is not configurable. So I asked this question. > Dynamically initialize the capacity of BlocksMap > > > Key: HDFS-15452 > URL: https://issues.apache.org/jira/browse/HDFS-15452 > Project: Hadoop HDFS > Issue Type: Improvement >Affects Versions: 3.0.3 >Reporter: jianghua zhu >Assignee: jianghua zhu >Priority: Major > > The default value for initializing BlocksMap in the BlockManager class is 2. > This can be set to a dynamic value. > BlockManager#BlockManager() { > .. > // Compute the map capacity by allocating 2% of total memory > blocksMap = new BlocksMap( > LightWeightGSet.computeCapacity(2.0, "BlocksMap")); > .. > } > -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17152423#comment-17152423 ] Íñigo Goiri commented on HDFS-15452: What kind of issues are you seeing? Adding an extra option is not the best but I think is better than having a hardcoded constant. Let's make it configurable. > Dynamically initialize the capacity of BlocksMap > > > Key: HDFS-15452 > URL: https://issues.apache.org/jira/browse/HDFS-15452 > Project: Hadoop HDFS > Issue Type: Improvement >Affects Versions: 3.0.3 >Reporter: jianghua zhu >Assignee: jianghua zhu >Priority: Major > > The default value for initializing BlocksMap in the BlockManager class is 2. > This can be set to a dynamic value. > BlockManager#BlockManager() { > .. > // Compute the map capacity by allocating 2% of total memory > blocksMap = new BlocksMap( > LightWeightGSet.computeCapacity(2.0, "BlocksMap")); > .. > } > -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org
[jira] [Commented] (HDFS-15452) Dynamically initialize the capacity of BlocksMap
[ https://issues.apache.org/jira/browse/HDFS-15452?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17151327#comment-17151327 ] jianghua zhu commented on HDFS-15452: - We can use a variable configuration in hdfs-default.xml to optimize this work item. [~elgoiri] , do you have any other suggestions? > Dynamically initialize the capacity of BlocksMap > > > Key: HDFS-15452 > URL: https://issues.apache.org/jira/browse/HDFS-15452 > Project: Hadoop HDFS > Issue Type: Improvement >Affects Versions: 3.0.3 >Reporter: jianghua zhu >Assignee: jianghua zhu >Priority: Major > > The default value for initializing BlocksMap in the BlockManager class is 2. > This can be set to a dynamic value. > BlockManager#BlockManager() { > .. > // Compute the map capacity by allocating 2% of total memory > blocksMap = new BlocksMap( > LightWeightGSet.computeCapacity(2.0, "BlocksMap")); > .. > } > -- This message was sent by Atlassian Jira (v8.3.4#803005) - To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org