[jira] [Updated] (HDFS-3689) Add support for variable length block

2015-01-23 Thread Jing Zhao (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-3689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jing Zhao updated HDFS-3689:

Attachment: HDFS-3689.009.patch

Thanks again Nicholas! Update the patch to add quota verification.

> Add support for variable length block
> -
>
> Key: HDFS-3689
> URL: https://issues.apache.org/jira/browse/HDFS-3689
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, hdfs-client, namenode
>Affects Versions: 3.0.0
>Reporter: Suresh Srinivas
>Assignee: Jing Zhao
> Attachments: HDFS-3689.000.patch, HDFS-3689.001.patch, 
> HDFS-3689.002.patch, HDFS-3689.003.patch, HDFS-3689.003.patch, 
> HDFS-3689.004.patch, HDFS-3689.005.patch, HDFS-3689.006.patch, 
> HDFS-3689.007.patch, HDFS-3689.008.patch, HDFS-3689.008.patch, 
> HDFS-3689.009.patch
>
>
> Currently HDFS supports fixed length blocks. Supporting variable length block 
> will allow new use cases and features to be built on top of HDFS. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7418) Raw Reed-Solomon coder in pure Java

2015-01-23 Thread Kai Zheng (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7418?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kai Zheng updated HDFS-7418:

Attachment: HDFS-7418-v1.patch

Uploaded an initial patch, pending for submit since it depends on the one in 
HDFS-7353.

> Raw Reed-Solomon coder in pure Java
> ---
>
> Key: HDFS-7418
> URL: https://issues.apache.org/jira/browse/HDFS-7418
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Kai Zheng
>Assignee: Kai Zheng
> Attachments: HDFS-7418-v1.patch
>
>
> This will implement RS coder by porting existing codes in HDFS-RAID in the 
> new codec and coder framework, which could be useful in case native support 
> isn't available or convenient in some environments or platforms.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7353) Raw Erasure Coder API for concrete encoding and decoding

2015-01-23 Thread Kai Zheng (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14288970#comment-14288970
 ] 

Kai Zheng commented on HDFS-7353:
-

There isn't test case for this, as it's pure API and no concrete coder is 
implemented here. There're test cases in dependent patches. Hope this works.

> Raw Erasure Coder API for concrete encoding and decoding
> 
>
> Key: HDFS-7353
> URL: https://issues.apache.org/jira/browse/HDFS-7353
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Kai Zheng
>Assignee: Kai Zheng
> Fix For: HDFS-EC
>
> Attachments: HDFS-7353-v1.patch, HDFS-7353-v2.patch
>
>
> This is to abstract and define raw erasure coder API across different codes 
> algorithms like RS, XOR and etc. Such API can be implemented by utilizing 
> various library support, such as Intel ISA library and Jerasure library.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7337) Configurable and pluggable Erasure Codec and schema

2015-01-23 Thread Kai Zheng (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7337?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14288973#comment-14288973
 ] 

Kai Zheng commented on HDFS-7337:
-

As discussed, most part of this source codes will be moved to hadoop-common 
side, but I'm not sure if it's OK to still use these JIRA entries that start 
with HDFS, instead of HADOOP.

Would anyone help confirm this ? It would be great if we don't have to change, 
it's reasonable because it does work for HDFS, although for other 
considerations we'd better move over there.

> Configurable and pluggable Erasure Codec and schema
> ---
>
> Key: HDFS-7337
> URL: https://issues.apache.org/jira/browse/HDFS-7337
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Zhe Zhang
>Assignee: Kai Zheng
> Attachments: HDFS-7337-prototype-v1.patch, 
> HDFS-7337-prototype-v2.zip, HDFS-7337-prototype-v3.zip, 
> PluggableErasureCodec.pdf
>
>
> According to HDFS-7285 and the design, this considers to support multiple 
> Erasure Codecs via pluggable approach. It allows to define and configure 
> multiple codec schemas with different coding algorithms and parameters. The 
> resultant codec schemas can be utilized and specified via command tool for 
> different file folders. While design and implement such pluggable framework, 
> it’s also to implement a concrete codec by default (Reed Solomon) to prove 
> the framework is useful and workable. Separate JIRA could be opened for the 
> RS codec implementation.
> Note HDFS-7353 will focus on the very low level codec API and implementation 
> to make concrete vendor libraries transparent to the upper layer. This JIRA 
> focuses on high level stuffs that interact with configuration, schema and etc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (HDFS-7665) Add definition of truncate preconditions/postconditions to filesystem specification

2015-01-23 Thread Steve Loughran (JIRA)
Steve Loughran created HDFS-7665:


 Summary: Add definition of truncate preconditions/postconditions 
to filesystem specification
 Key: HDFS-7665
 URL: https://issues.apache.org/jira/browse/HDFS-7665
 Project: Hadoop HDFS
  Issue Type: Sub-task
  Components: documentation
Affects Versions: 3.0.0
Reporter: Steve Loughran


With the addition of a major new feature to filesystems, the filesystem 
specification in hadoop-common/site is now out of sync. 

This means that
# there's no strict specification of what it should do
# you can't derive tests from that specification
# other people trying to implement the API will have to infer what to do from 
the HDFS source
# there's no way to decide whether or not the HDFS implementation does what it 
is intended.
# without matching tests against the raw local FS, differences between the HDFS 
impl and the Posix standard one won't be caught until it is potentially too 
late to fix.

The operation should be relatively easy to define (after a truncate, the files 
bytes [0...len-1] must equal the original bytes, length(file)==len, etc)

The truncate tests already written could then be pulled up into contract tests 
which any filesystem implementation can run against.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7659) We should check the new length of truncate can't be a negative value.

2015-01-23 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7659?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289066#comment-14289066
 ] 

Hadoop QA commented on HDFS-7659:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12694104/HDFS-7659.003.patch
  against trunk revision 3aab354.

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 1 new 
or modified test files.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javadoc{color}.  There were no new javadoc warning messages.

{color:green}+1 eclipse:eclipse{color}.  The patch built with 
eclipse:eclipse.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:red}-1 core tests{color}.  The patch failed these unit tests in 
hadoop-hdfs-project/hadoop-hdfs:

  org.apache.hadoop.hdfs.server.namenode.TestFileTruncate

Test results: 
https://builds.apache.org/job/PreCommit-HDFS-Build/9310//testReport/
Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/9310//console

This message is automatically generated.

> We should check the new length of truncate can't be a negative value.
> -
>
> Key: HDFS-7659
> URL: https://issues.apache.org/jira/browse/HDFS-7659
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>  Components: datanode, namenode
>Reporter: Yi Liu
>Assignee: Yi Liu
> Fix For: 3.0.0
>
> Attachments: HDFS-7659.001.patch, HDFS-7659.002.patch, 
> HDFS-7659.003.patch
>
>
> It's obvious that we should check the new length of truncate can't be a 
> negative value.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3519) Checkpoint upload may interfere with a concurrent saveNamespace

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289072#comment-14289072
 ] 

Hudson commented on HDFS-3519:
--

FAILURE: Integrated in Hadoop-Yarn-trunk-Java8 #82 (See 
[https://builds.apache.org/job/Hadoop-Yarn-trunk-Java8/82/])
HDFS-3519. Checkpoint upload may interfere with a concurrent saveNamespace. 
Contributed by Ming Ma. (cnauroth: rev d3268c4b10a0f728b554ddb6d69b666a9ca13f12)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/ImageServlet.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestStandbyCheckpoints.java


> Checkpoint upload may interfere with a concurrent saveNamespace
> ---
>
> Key: HDFS-3519
> URL: https://issues.apache.org/jira/browse/HDFS-3519
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: namenode
>Reporter: Todd Lipcon
>Assignee: Ming Ma
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-3519-2.patch, HDFS-3519-3.patch, 
> HDFS-3519-branch-2.patch, HDFS-3519.patch, test-output.txt
>
>
> TestStandbyCheckpoints failed in [precommit build 
> 2620|https://builds.apache.org/job/PreCommit-HDFS-Build/2620//testReport/] 
> due to the following issue:
> - both nodes were in Standby state, and configured to checkpoint "as fast as 
> possible"
> - NN1 starts to save its own namespace
> - NN2 starts to upload a checkpoint for the same txid. So, both threads are 
> writing to the same file fsimage.ckpt_12, but the actual file contents 
> correspond to the uploading thread's data.
> - NN1 finished its saveNamespace operation while NN2 was still uploading. So, 
> it renamed the ckpt file. However, the contents of the file are still empty 
> since NN2 hasn't sent any bytes
> - NN2 finishes the upload, and the rename() call fails, which causes the 
> directory to be marked failed, etc.
> The result is that there is a file fsimage_12 which appears to be a finalized 
> image but in fact is incompletely transferred. When the transfer completes, 
> the problem "heals itself" so there wouldn't be persistent corruption unless 
> the machine crashes at the same time. And even then, we'd still have the 
> earlier checkpoint to restore from.
> This same race could occur in a non-HA setup if a user puts the NN in safe 
> mode and issues saveNamespace operations concurrent with a 2NN checkpointing, 
> I believe.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7660) BlockReceiver#close() might be called multiple times, which causes the fsvolume reference being released incorrectly.

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289074#comment-14289074
 ] 

Hudson commented on HDFS-7660:
--

FAILURE: Integrated in Hadoop-Yarn-trunk-Java8 #82 (See 
[https://builds.apache.org/job/Hadoop-Yarn-trunk-Java8/82/])
HDFS-7660. BlockReceiver#close() might be called multiple times, which causes 
the fsvolume reference being released incorrectly. (Lei Xu via yliu) (yliu: rev 
5f124efb3e090f96f217bee22f3c8897f9772f14)
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockReceiver.java
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> BlockReceiver#close() might be called multiple times, which causes the 
> fsvolume reference being released incorrectly.
> -
>
> Key: HDFS-7660
> URL: https://issues.apache.org/jira/browse/HDFS-7660
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 3.0.0
>Reporter: Lei (Eddy) Xu
>Assignee: Lei (Eddy) Xu
>Priority: Minor
> Fix For: 2.7.0
>
> Attachments: HDFS-7660.000.patch
>
>
> {{BlockReceiver.close()}} might be called from multiple places, e.g. 
> {{PacketResponder#finalizeBlock}} and {{BlockReceiver#receiveBlock}}. 
> As a result, {{BlockReceiver#replicaHander}} should be set to {{null}} after 
> release the resource.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7575) Upgrade should generate a unique storage ID for each volume

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289070#comment-14289070
 ] 

Hudson commented on HDFS-7575:
--

FAILURE: Integrated in Hadoop-Yarn-trunk-Java8 #82 (See 
[https://builds.apache.org/job/Hadoop-Yarn-trunk-Java8/82/])
HDFS-7575. Upgrade should generate a unique storage ID for each volume. 
(Contributed by Arpit Agarwal) (arp: rev 
d34074e237ee10b83aeb02294f595714d43e39e4)
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeStartupFixesLegacyStorageIDs.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/protocol/DatanodeStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeLayoutUpgrade.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSUpgradeFromImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/UpgradeUtilities.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/TestFsDatasetImpl.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
HDFS-7575. Fix CHANGES.txt (arp: rev 792b7d337a0edbc3da74099709c197e85ce38097)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> Upgrade should generate a unique storage ID for each volume
> ---
>
> Key: HDFS-7575
> URL: https://issues.apache.org/jira/browse/HDFS-7575
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 2.4.0, 2.5.0, 2.6.0
>Reporter: Lars Francke
>Assignee: Arpit Agarwal
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-7575.01.patch, HDFS-7575.02.patch, 
> HDFS-7575.03.binary.patch, HDFS-7575.03.patch, HDFS-7575.04.binary.patch, 
> HDFS-7575.04.patch, HDFS-7575.05.binary.patch, HDFS-7575.05.patch, 
> testUpgrade22via24GeneratesStorageIDs.tgz, 
> testUpgradeFrom22GeneratesStorageIDs.tgz, 
> testUpgradeFrom24PreservesStorageId.tgz
>
>
> Before HDFS-2832 each DataNode would have a unique storageId which included 
> its IP address. Since HDFS-2832 the DataNodes have a unique storageId per 
> storage directory which is just a random UUID.
> They send reports per storage directory in their heartbeats. This heartbeat 
> is processed on the NameNode in the 
> {{DatanodeDescriptor#updateHeartbeatState}} method. Pre HDFS-2832 this would 
> just store the information per Datanode. After the patch though each DataNode 
> can have multiple different storages so it's stored in a map keyed by the 
> storage Id.
> This works fine for all clusters that have been installed post HDFS-2832 as 
> they get a UUID for their storage Id. So a DN with 8 drives has a map with 8 
> different keys. On each Heartbeat the Map is searched and updated 
> ({{DatanodeStorageInfo storage = storageMap.get(s.getStorageID());}}):
> {code:title=DatanodeStorageInfo}
>   void updateState(StorageReport r) {
> capacity = r.getCapacity();
> dfsUsed = r.getDfsUsed();
> remaining = r.getRemaining();
> blockPoolUsed = r.getBlockPoolUsed();
>   }
> {code}
> On clusters that were upgraded from a pre HDFS-2832 version though the 
> storage Id has not been rewritten (at least not on the four clusters I 
> checked) so each directory will have the exact same storageId. That means 
> there'll be only a single entry in the {{storageMap}} and it'll be 
> overwritten by a random {{StorageReport}} from the DataNode. This can be seen 
> in the {{updateState}} method above. This just assigns the capacity from the 
> received report, instead it should probably sum it up per received heartbeat.
> The Balancer seems to be one of the only things that actually uses this 
> information so it now considers the utilization of a random drive per 
> DataNode for balancing purposes.
> Things get even worse when a drive has been added or replaced as this will 
> now get a new storage Id so there'll be two entries in the storageMap. As new 
> drives are usually empty it skewes the balancers decision in a way that this 
> node will never be considered over-ut

[jira] [Commented] (HDFS-7660) BlockReceiver#close() might be called multiple times, which causes the fsvolume reference being released incorrectly.

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289110#comment-14289110
 ] 

Hudson commented on HDFS-7660:
--

FAILURE: Integrated in Hadoop-Yarn-trunk #816 (See 
[https://builds.apache.org/job/Hadoop-Yarn-trunk/816/])
HDFS-7660. BlockReceiver#close() might be called multiple times, which causes 
the fsvolume reference being released incorrectly. (Lei Xu via yliu) (yliu: rev 
5f124efb3e090f96f217bee22f3c8897f9772f14)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockReceiver.java


> BlockReceiver#close() might be called multiple times, which causes the 
> fsvolume reference being released incorrectly.
> -
>
> Key: HDFS-7660
> URL: https://issues.apache.org/jira/browse/HDFS-7660
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 3.0.0
>Reporter: Lei (Eddy) Xu
>Assignee: Lei (Eddy) Xu
>Priority: Minor
> Fix For: 2.7.0
>
> Attachments: HDFS-7660.000.patch
>
>
> {{BlockReceiver.close()}} might be called from multiple places, e.g. 
> {{PacketResponder#finalizeBlock}} and {{BlockReceiver#receiveBlock}}. 
> As a result, {{BlockReceiver#replicaHander}} should be set to {{null}} after 
> release the resource.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3519) Checkpoint upload may interfere with a concurrent saveNamespace

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289108#comment-14289108
 ] 

Hudson commented on HDFS-3519:
--

FAILURE: Integrated in Hadoop-Yarn-trunk #816 (See 
[https://builds.apache.org/job/Hadoop-Yarn-trunk/816/])
HDFS-3519. Checkpoint upload may interfere with a concurrent saveNamespace. 
Contributed by Ming Ma. (cnauroth: rev d3268c4b10a0f728b554ddb6d69b666a9ca13f12)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/ImageServlet.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestStandbyCheckpoints.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java


> Checkpoint upload may interfere with a concurrent saveNamespace
> ---
>
> Key: HDFS-3519
> URL: https://issues.apache.org/jira/browse/HDFS-3519
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: namenode
>Reporter: Todd Lipcon
>Assignee: Ming Ma
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-3519-2.patch, HDFS-3519-3.patch, 
> HDFS-3519-branch-2.patch, HDFS-3519.patch, test-output.txt
>
>
> TestStandbyCheckpoints failed in [precommit build 
> 2620|https://builds.apache.org/job/PreCommit-HDFS-Build/2620//testReport/] 
> due to the following issue:
> - both nodes were in Standby state, and configured to checkpoint "as fast as 
> possible"
> - NN1 starts to save its own namespace
> - NN2 starts to upload a checkpoint for the same txid. So, both threads are 
> writing to the same file fsimage.ckpt_12, but the actual file contents 
> correspond to the uploading thread's data.
> - NN1 finished its saveNamespace operation while NN2 was still uploading. So, 
> it renamed the ckpt file. However, the contents of the file are still empty 
> since NN2 hasn't sent any bytes
> - NN2 finishes the upload, and the rename() call fails, which causes the 
> directory to be marked failed, etc.
> The result is that there is a file fsimage_12 which appears to be a finalized 
> image but in fact is incompletely transferred. When the transfer completes, 
> the problem "heals itself" so there wouldn't be persistent corruption unless 
> the machine crashes at the same time. And even then, we'd still have the 
> earlier checkpoint to restore from.
> This same race could occur in a non-HA setup if a user puts the NN in safe 
> mode and issues saveNamespace operations concurrent with a 2NN checkpointing, 
> I believe.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7575) Upgrade should generate a unique storage ID for each volume

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289106#comment-14289106
 ] 

Hudson commented on HDFS-7575:
--

FAILURE: Integrated in Hadoop-Yarn-trunk #816 (See 
[https://builds.apache.org/job/Hadoop-Yarn-trunk/816/])
HDFS-7575. Upgrade should generate a unique storage ID for each volume. 
(Contributed by Arpit Agarwal) (arp: rev 
d34074e237ee10b83aeb02294f595714d43e39e4)
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSUpgradeFromImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/TestFsDatasetImpl.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/UpgradeUtilities.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeLayoutUpgrade.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/protocol/DatanodeStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeStartupFixesLegacyStorageIDs.java
HDFS-7575. Fix CHANGES.txt (arp: rev 792b7d337a0edbc3da74099709c197e85ce38097)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> Upgrade should generate a unique storage ID for each volume
> ---
>
> Key: HDFS-7575
> URL: https://issues.apache.org/jira/browse/HDFS-7575
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 2.4.0, 2.5.0, 2.6.0
>Reporter: Lars Francke
>Assignee: Arpit Agarwal
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-7575.01.patch, HDFS-7575.02.patch, 
> HDFS-7575.03.binary.patch, HDFS-7575.03.patch, HDFS-7575.04.binary.patch, 
> HDFS-7575.04.patch, HDFS-7575.05.binary.patch, HDFS-7575.05.patch, 
> testUpgrade22via24GeneratesStorageIDs.tgz, 
> testUpgradeFrom22GeneratesStorageIDs.tgz, 
> testUpgradeFrom24PreservesStorageId.tgz
>
>
> Before HDFS-2832 each DataNode would have a unique storageId which included 
> its IP address. Since HDFS-2832 the DataNodes have a unique storageId per 
> storage directory which is just a random UUID.
> They send reports per storage directory in their heartbeats. This heartbeat 
> is processed on the NameNode in the 
> {{DatanodeDescriptor#updateHeartbeatState}} method. Pre HDFS-2832 this would 
> just store the information per Datanode. After the patch though each DataNode 
> can have multiple different storages so it's stored in a map keyed by the 
> storage Id.
> This works fine for all clusters that have been installed post HDFS-2832 as 
> they get a UUID for their storage Id. So a DN with 8 drives has a map with 8 
> different keys. On each Heartbeat the Map is searched and updated 
> ({{DatanodeStorageInfo storage = storageMap.get(s.getStorageID());}}):
> {code:title=DatanodeStorageInfo}
>   void updateState(StorageReport r) {
> capacity = r.getCapacity();
> dfsUsed = r.getDfsUsed();
> remaining = r.getRemaining();
> blockPoolUsed = r.getBlockPoolUsed();
>   }
> {code}
> On clusters that were upgraded from a pre HDFS-2832 version though the 
> storage Id has not been rewritten (at least not on the four clusters I 
> checked) so each directory will have the exact same storageId. That means 
> there'll be only a single entry in the {{storageMap}} and it'll be 
> overwritten by a random {{StorageReport}} from the DataNode. This can be seen 
> in the {{updateState}} method above. This just assigns the capacity from the 
> received report, instead it should probably sum it up per received heartbeat.
> The Balancer seems to be one of the only things that actually uses this 
> information so it now considers the utilization of a random drive per 
> DataNode for balancing purposes.
> Things get even worse when a drive has been added or replaced as this will 
> now get a new storage Id so there'll be two entries in the storageMap. As new 
> drives are usually empty it skewes the balancers decision in a way that this 
> node will never be considered over-utilized.
> 

[jira] [Commented] (HDFS-3689) Add support for variable length block

2015-01-23 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3689?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289129#comment-14289129
 ] 

Hadoop QA commented on HDFS-3689:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12694112/HDFS-3689.009.patch
  against trunk revision 3aab354.

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 14 new 
or modified test files.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javadoc{color}.  There were no new javadoc warning messages.

{color:green}+1 eclipse:eclipse{color}.  The patch built with 
eclipse:eclipse.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:red}-1 core tests{color}.  The patch failed these unit tests in 
hadoop-common-project/hadoop-common hadoop-hdfs-project/hadoop-hdfs 
hadoop-hdfs-project/hadoop-hdfs-nfs:

  
org.apache.hadoop.hdfs.tools.offlineEditsViewer.TestOfflineEditsViewer

Test results: 
https://builds.apache.org/job/PreCommit-HDFS-Build/9311//testReport/
Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/9311//console

This message is automatically generated.

> Add support for variable length block
> -
>
> Key: HDFS-3689
> URL: https://issues.apache.org/jira/browse/HDFS-3689
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, hdfs-client, namenode
>Affects Versions: 3.0.0
>Reporter: Suresh Srinivas
>Assignee: Jing Zhao
> Attachments: HDFS-3689.000.patch, HDFS-3689.001.patch, 
> HDFS-3689.002.patch, HDFS-3689.003.patch, HDFS-3689.003.patch, 
> HDFS-3689.004.patch, HDFS-3689.005.patch, HDFS-3689.006.patch, 
> HDFS-3689.007.patch, HDFS-3689.008.patch, HDFS-3689.008.patch, 
> HDFS-3689.009.patch
>
>
> Currently HDFS supports fixed length blocks. Supporting variable length block 
> will allow new use cases and features to be built on top of HDFS. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7575) Upgrade should generate a unique storage ID for each volume

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289184#comment-14289184
 ] 

Hudson commented on HDFS-7575:
--

FAILURE: Integrated in Hadoop-Hdfs-trunk #2014 (See 
[https://builds.apache.org/job/Hadoop-Hdfs-trunk/2014/])
HDFS-7575. Upgrade should generate a unique storage ID for each volume. 
(Contributed by Arpit Agarwal) (arp: rev 
d34074e237ee10b83aeb02294f595714d43e39e4)
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/TestFsDatasetImpl.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSUpgradeFromImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeStartupFixesLegacyStorageIDs.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeLayoutUpgrade.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/UpgradeUtilities.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/protocol/DatanodeStorage.java
HDFS-7575. Fix CHANGES.txt (arp: rev 792b7d337a0edbc3da74099709c197e85ce38097)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> Upgrade should generate a unique storage ID for each volume
> ---
>
> Key: HDFS-7575
> URL: https://issues.apache.org/jira/browse/HDFS-7575
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 2.4.0, 2.5.0, 2.6.0
>Reporter: Lars Francke
>Assignee: Arpit Agarwal
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-7575.01.patch, HDFS-7575.02.patch, 
> HDFS-7575.03.binary.patch, HDFS-7575.03.patch, HDFS-7575.04.binary.patch, 
> HDFS-7575.04.patch, HDFS-7575.05.binary.patch, HDFS-7575.05.patch, 
> testUpgrade22via24GeneratesStorageIDs.tgz, 
> testUpgradeFrom22GeneratesStorageIDs.tgz, 
> testUpgradeFrom24PreservesStorageId.tgz
>
>
> Before HDFS-2832 each DataNode would have a unique storageId which included 
> its IP address. Since HDFS-2832 the DataNodes have a unique storageId per 
> storage directory which is just a random UUID.
> They send reports per storage directory in their heartbeats. This heartbeat 
> is processed on the NameNode in the 
> {{DatanodeDescriptor#updateHeartbeatState}} method. Pre HDFS-2832 this would 
> just store the information per Datanode. After the patch though each DataNode 
> can have multiple different storages so it's stored in a map keyed by the 
> storage Id.
> This works fine for all clusters that have been installed post HDFS-2832 as 
> they get a UUID for their storage Id. So a DN with 8 drives has a map with 8 
> different keys. On each Heartbeat the Map is searched and updated 
> ({{DatanodeStorageInfo storage = storageMap.get(s.getStorageID());}}):
> {code:title=DatanodeStorageInfo}
>   void updateState(StorageReport r) {
> capacity = r.getCapacity();
> dfsUsed = r.getDfsUsed();
> remaining = r.getRemaining();
> blockPoolUsed = r.getBlockPoolUsed();
>   }
> {code}
> On clusters that were upgraded from a pre HDFS-2832 version though the 
> storage Id has not been rewritten (at least not on the four clusters I 
> checked) so each directory will have the exact same storageId. That means 
> there'll be only a single entry in the {{storageMap}} and it'll be 
> overwritten by a random {{StorageReport}} from the DataNode. This can be seen 
> in the {{updateState}} method above. This just assigns the capacity from the 
> received report, instead it should probably sum it up per received heartbeat.
> The Balancer seems to be one of the only things that actually uses this 
> information so it now considers the utilization of a random drive per 
> DataNode for balancing purposes.
> Things get even worse when a drive has been added or replaced as this will 
> now get a new storage Id so there'll be two entries in the storageMap. As new 
> drives are usually empty it skewes the balancers decision in a way that this 
> node will never be considered over-utilized.

[jira] [Commented] (HDFS-7660) BlockReceiver#close() might be called multiple times, which causes the fsvolume reference being released incorrectly.

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289188#comment-14289188
 ] 

Hudson commented on HDFS-7660:
--

FAILURE: Integrated in Hadoop-Hdfs-trunk #2014 (See 
[https://builds.apache.org/job/Hadoop-Hdfs-trunk/2014/])
HDFS-7660. BlockReceiver#close() might be called multiple times, which causes 
the fsvolume reference being released incorrectly. (Lei Xu via yliu) (yliu: rev 
5f124efb3e090f96f217bee22f3c8897f9772f14)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockReceiver.java


> BlockReceiver#close() might be called multiple times, which causes the 
> fsvolume reference being released incorrectly.
> -
>
> Key: HDFS-7660
> URL: https://issues.apache.org/jira/browse/HDFS-7660
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 3.0.0
>Reporter: Lei (Eddy) Xu
>Assignee: Lei (Eddy) Xu
>Priority: Minor
> Fix For: 2.7.0
>
> Attachments: HDFS-7660.000.patch
>
>
> {{BlockReceiver.close()}} might be called from multiple places, e.g. 
> {{PacketResponder#finalizeBlock}} and {{BlockReceiver#receiveBlock}}. 
> As a result, {{BlockReceiver#replicaHander}} should be set to {{null}} after 
> release the resource.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3519) Checkpoint upload may interfere with a concurrent saveNamespace

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289186#comment-14289186
 ] 

Hudson commented on HDFS-3519:
--

FAILURE: Integrated in Hadoop-Hdfs-trunk #2014 (See 
[https://builds.apache.org/job/Hadoop-Hdfs-trunk/2014/])
HDFS-3519. Checkpoint upload may interfere with a concurrent saveNamespace. 
Contributed by Ming Ma. (cnauroth: rev d3268c4b10a0f728b554ddb6d69b666a9ca13f12)
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestStandbyCheckpoints.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/ImageServlet.java
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> Checkpoint upload may interfere with a concurrent saveNamespace
> ---
>
> Key: HDFS-3519
> URL: https://issues.apache.org/jira/browse/HDFS-3519
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: namenode
>Reporter: Todd Lipcon
>Assignee: Ming Ma
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-3519-2.patch, HDFS-3519-3.patch, 
> HDFS-3519-branch-2.patch, HDFS-3519.patch, test-output.txt
>
>
> TestStandbyCheckpoints failed in [precommit build 
> 2620|https://builds.apache.org/job/PreCommit-HDFS-Build/2620//testReport/] 
> due to the following issue:
> - both nodes were in Standby state, and configured to checkpoint "as fast as 
> possible"
> - NN1 starts to save its own namespace
> - NN2 starts to upload a checkpoint for the same txid. So, both threads are 
> writing to the same file fsimage.ckpt_12, but the actual file contents 
> correspond to the uploading thread's data.
> - NN1 finished its saveNamespace operation while NN2 was still uploading. So, 
> it renamed the ckpt file. However, the contents of the file are still empty 
> since NN2 hasn't sent any bytes
> - NN2 finishes the upload, and the rename() call fails, which causes the 
> directory to be marked failed, etc.
> The result is that there is a file fsimage_12 which appears to be a finalized 
> image but in fact is incompletely transferred. When the transfer completes, 
> the problem "heals itself" so there wouldn't be persistent corruption unless 
> the machine crashes at the same time. And even then, we'd still have the 
> earlier checkpoint to restore from.
> This same race could occur in a non-HA setup if a user puts the NN in safe 
> mode and issues saveNamespace operations concurrent with a 2NN checkpointing, 
> I believe.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7644) minor typo in HffpFS doc

2015-01-23 Thread Charles Lamb (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7644?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289203#comment-14289203
 ] 

Charles Lamb commented on HDFS-7644:


The FB warnings are spurious.


> minor typo in HffpFS doc
> 
>
> Key: HDFS-7644
> URL: https://issues.apache.org/jira/browse/HDFS-7644
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.7.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Trivial
> Attachments: HDFS-7644.000.patch
>
>
> In hadoop-httpfs/src/site/apt/index.apt.vm, s/seening/seen/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7653) Block Readers and Writers used in both client side and datanode side

2015-01-23 Thread Li Bo (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7653?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289209#comment-14289209
 ] 

Li Bo commented on HDFS-7653:
-

Thanks for your comments.
I think we probably should separate Readers and Writers in two different JIRAs 
for easing the review.
-- Agree. I will separate readers and writers in two jiras later.
For the EC reader, it should implement a new EcDFSInputStream and reuse the 
existing hdfs readers in order to have all caching and short circuit read 
features.
-- I have implemented a new dfs InputStream(named DFSStripeInputStream) and it 
uses ClientBlockReader. ClientBlockReader uses the existing two BlockReader and 
can have all caching and short circuit read features. I will upload code to 
HDFS-7545 in several days which show the usage of these readers and writers.

> Block Readers and Writers used in both client side and datanode side
> 
>
> Key: HDFS-7653
> URL: https://issues.apache.org/jira/browse/HDFS-7653
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Li Bo
>Assignee: Li Bo
> Attachments: BlockReadersWriters.patch
>
>
> There're a lot of block read/write operations in HDFS-EC, for example, when 
> client writes a file in striping layout, client has to write several blocks 
> to several different datanodes; if a datanode wants to do an 
> encoding/decoding task, it has to read several blocks from itself and other 
> datanodes, and writes one or more blocks to itself or other datanodes.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7653) Block Readers and Writers used in both client side and datanode side

2015-01-23 Thread Li Bo (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7653?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289262#comment-14289262
 ] 

Li Bo commented on HDFS-7653:
-

Hi, Zhe , thanks for your comments. 
1.  BlockReader contains some client related methods and maybe we will add 
some new methods to the interface so I choose to create a new one.
2.  We will create a new dfs inputstream named DFSStripeInputStream and it 
uses BlockGroupReader to read data from different datanodes. BlockGroupReader 
contains a set of BlockReaders.  I will upload code to HDFS-7545 in several 
days. Current implementation tries to make client and datanode EC 
encoding/decoding work in the same model.
3.  Agree that we should simplify the logic of BlockWriter between 
datanodes. I will optimize the code later. I am not very clear why 
FSOutputSummer is not appropriate for a block writer, it contains a data buffer 
and checksum buffer. 
4.  We can have a further discussion after code is uploaded to HDFS-7545. I 
will refer to RSStriper logic in QFS to optimize current implementation.

Nits:
1.  we can read a byte and put to buf immediately. The position of buf need 
to remain the same, I will fix it and add unit test.
2.  I will change the unit test class name later. I generated the patch 
after all test cases pass.  getBlockFile() is a static method and other classes 
also use it in the way of MiniDFSCluster.getBlockFile. You can have a further 
check.


> Block Readers and Writers used in both client side and datanode side
> 
>
> Key: HDFS-7653
> URL: https://issues.apache.org/jira/browse/HDFS-7653
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Li Bo
>Assignee: Li Bo
> Attachments: BlockReadersWriters.patch
>
>
> There're a lot of block read/write operations in HDFS-EC, for example, when 
> client writes a file in striping layout, client has to write several blocks 
> to several different datanodes; if a datanode wants to do an 
> encoding/decoding task, it has to read several blocks from itself and other 
> datanodes, and writes one or more blocks to itself or other datanodes.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7575) Upgrade should generate a unique storage ID for each volume

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289278#comment-14289278
 ] 

Hudson commented on HDFS-7575:
--

FAILURE: Integrated in Hadoop-Hdfs-trunk-Java8 #79 (See 
[https://builds.apache.org/job/Hadoop-Hdfs-trunk-Java8/79/])
HDFS-7575. Upgrade should generate a unique storage ID for each volume. 
(Contributed by Arpit Agarwal) (arp: rev 
d34074e237ee10b83aeb02294f595714d43e39e4)
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSUpgradeFromImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeLayoutUpgrade.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/TestFsDatasetImpl.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/UpgradeUtilities.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/protocol/DatanodeStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeStartupFixesLegacyStorageIDs.java
HDFS-7575. Fix CHANGES.txt (arp: rev 792b7d337a0edbc3da74099709c197e85ce38097)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> Upgrade should generate a unique storage ID for each volume
> ---
>
> Key: HDFS-7575
> URL: https://issues.apache.org/jira/browse/HDFS-7575
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 2.4.0, 2.5.0, 2.6.0
>Reporter: Lars Francke
>Assignee: Arpit Agarwal
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-7575.01.patch, HDFS-7575.02.patch, 
> HDFS-7575.03.binary.patch, HDFS-7575.03.patch, HDFS-7575.04.binary.patch, 
> HDFS-7575.04.patch, HDFS-7575.05.binary.patch, HDFS-7575.05.patch, 
> testUpgrade22via24GeneratesStorageIDs.tgz, 
> testUpgradeFrom22GeneratesStorageIDs.tgz, 
> testUpgradeFrom24PreservesStorageId.tgz
>
>
> Before HDFS-2832 each DataNode would have a unique storageId which included 
> its IP address. Since HDFS-2832 the DataNodes have a unique storageId per 
> storage directory which is just a random UUID.
> They send reports per storage directory in their heartbeats. This heartbeat 
> is processed on the NameNode in the 
> {{DatanodeDescriptor#updateHeartbeatState}} method. Pre HDFS-2832 this would 
> just store the information per Datanode. After the patch though each DataNode 
> can have multiple different storages so it's stored in a map keyed by the 
> storage Id.
> This works fine for all clusters that have been installed post HDFS-2832 as 
> they get a UUID for their storage Id. So a DN with 8 drives has a map with 8 
> different keys. On each Heartbeat the Map is searched and updated 
> ({{DatanodeStorageInfo storage = storageMap.get(s.getStorageID());}}):
> {code:title=DatanodeStorageInfo}
>   void updateState(StorageReport r) {
> capacity = r.getCapacity();
> dfsUsed = r.getDfsUsed();
> remaining = r.getRemaining();
> blockPoolUsed = r.getBlockPoolUsed();
>   }
> {code}
> On clusters that were upgraded from a pre HDFS-2832 version though the 
> storage Id has not been rewritten (at least not on the four clusters I 
> checked) so each directory will have the exact same storageId. That means 
> there'll be only a single entry in the {{storageMap}} and it'll be 
> overwritten by a random {{StorageReport}} from the DataNode. This can be seen 
> in the {{updateState}} method above. This just assigns the capacity from the 
> received report, instead it should probably sum it up per received heartbeat.
> The Balancer seems to be one of the only things that actually uses this 
> information so it now considers the utilization of a random drive per 
> DataNode for balancing purposes.
> Things get even worse when a drive has been added or replaced as this will 
> now get a new storage Id so there'll be two entries in the storageMap. As new 
> drives are usually empty it skewes the balancers decision in a way that this 
> node will never be considered over-ut

[jira] [Commented] (HDFS-3519) Checkpoint upload may interfere with a concurrent saveNamespace

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289280#comment-14289280
 ] 

Hudson commented on HDFS-3519:
--

FAILURE: Integrated in Hadoop-Hdfs-trunk-Java8 #79 (See 
[https://builds.apache.org/job/Hadoop-Hdfs-trunk-Java8/79/])
HDFS-3519. Checkpoint upload may interfere with a concurrent saveNamespace. 
Contributed by Ming Ma. (cnauroth: rev d3268c4b10a0f728b554ddb6d69b666a9ca13f12)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestStandbyCheckpoints.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/ImageServlet.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java


> Checkpoint upload may interfere with a concurrent saveNamespace
> ---
>
> Key: HDFS-3519
> URL: https://issues.apache.org/jira/browse/HDFS-3519
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: namenode
>Reporter: Todd Lipcon
>Assignee: Ming Ma
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-3519-2.patch, HDFS-3519-3.patch, 
> HDFS-3519-branch-2.patch, HDFS-3519.patch, test-output.txt
>
>
> TestStandbyCheckpoints failed in [precommit build 
> 2620|https://builds.apache.org/job/PreCommit-HDFS-Build/2620//testReport/] 
> due to the following issue:
> - both nodes were in Standby state, and configured to checkpoint "as fast as 
> possible"
> - NN1 starts to save its own namespace
> - NN2 starts to upload a checkpoint for the same txid. So, both threads are 
> writing to the same file fsimage.ckpt_12, but the actual file contents 
> correspond to the uploading thread's data.
> - NN1 finished its saveNamespace operation while NN2 was still uploading. So, 
> it renamed the ckpt file. However, the contents of the file are still empty 
> since NN2 hasn't sent any bytes
> - NN2 finishes the upload, and the rename() call fails, which causes the 
> directory to be marked failed, etc.
> The result is that there is a file fsimage_12 which appears to be a finalized 
> image but in fact is incompletely transferred. When the transfer completes, 
> the problem "heals itself" so there wouldn't be persistent corruption unless 
> the machine crashes at the same time. And even then, we'd still have the 
> earlier checkpoint to restore from.
> This same race could occur in a non-HA setup if a user puts the NN in safe 
> mode and issues saveNamespace operations concurrent with a 2NN checkpointing, 
> I believe.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7660) BlockReceiver#close() might be called multiple times, which causes the fsvolume reference being released incorrectly.

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289282#comment-14289282
 ] 

Hudson commented on HDFS-7660:
--

FAILURE: Integrated in Hadoop-Hdfs-trunk-Java8 #79 (See 
[https://builds.apache.org/job/Hadoop-Hdfs-trunk-Java8/79/])
HDFS-7660. BlockReceiver#close() might be called multiple times, which causes 
the fsvolume reference being released incorrectly. (Lei Xu via yliu) (yliu: rev 
5f124efb3e090f96f217bee22f3c8897f9772f14)
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockReceiver.java
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> BlockReceiver#close() might be called multiple times, which causes the 
> fsvolume reference being released incorrectly.
> -
>
> Key: HDFS-7660
> URL: https://issues.apache.org/jira/browse/HDFS-7660
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 3.0.0
>Reporter: Lei (Eddy) Xu
>Assignee: Lei (Eddy) Xu
>Priority: Minor
> Fix For: 2.7.0
>
> Attachments: HDFS-7660.000.patch
>
>
> {{BlockReceiver.close()}} might be called from multiple places, e.g. 
> {{PacketResponder#finalizeBlock}} and {{BlockReceiver#receiveBlock}}. 
> As a result, {{BlockReceiver#replicaHander}} should be set to {{null}} after 
> release the resource.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7575) Upgrade should generate a unique storage ID for each volume

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289341#comment-14289341
 ] 

Hudson commented on HDFS-7575:
--

FAILURE: Integrated in Hadoop-Mapreduce-trunk-Java8 #83 (See 
[https://builds.apache.org/job/Hadoop-Mapreduce-trunk-Java8/83/])
HDFS-7575. Upgrade should generate a unique storage ID for each volume. 
(Contributed by Arpit Agarwal) (arp: rev 
d34074e237ee10b83aeb02294f595714d43e39e4)
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/TestFsDatasetImpl.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeStartupFixesLegacyStorageIDs.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/protocol/DatanodeStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeLayoutUpgrade.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSUpgradeFromImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/UpgradeUtilities.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
HDFS-7575. Fix CHANGES.txt (arp: rev 792b7d337a0edbc3da74099709c197e85ce38097)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> Upgrade should generate a unique storage ID for each volume
> ---
>
> Key: HDFS-7575
> URL: https://issues.apache.org/jira/browse/HDFS-7575
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 2.4.0, 2.5.0, 2.6.0
>Reporter: Lars Francke
>Assignee: Arpit Agarwal
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-7575.01.patch, HDFS-7575.02.patch, 
> HDFS-7575.03.binary.patch, HDFS-7575.03.patch, HDFS-7575.04.binary.patch, 
> HDFS-7575.04.patch, HDFS-7575.05.binary.patch, HDFS-7575.05.patch, 
> testUpgrade22via24GeneratesStorageIDs.tgz, 
> testUpgradeFrom22GeneratesStorageIDs.tgz, 
> testUpgradeFrom24PreservesStorageId.tgz
>
>
> Before HDFS-2832 each DataNode would have a unique storageId which included 
> its IP address. Since HDFS-2832 the DataNodes have a unique storageId per 
> storage directory which is just a random UUID.
> They send reports per storage directory in their heartbeats. This heartbeat 
> is processed on the NameNode in the 
> {{DatanodeDescriptor#updateHeartbeatState}} method. Pre HDFS-2832 this would 
> just store the information per Datanode. After the patch though each DataNode 
> can have multiple different storages so it's stored in a map keyed by the 
> storage Id.
> This works fine for all clusters that have been installed post HDFS-2832 as 
> they get a UUID for their storage Id. So a DN with 8 drives has a map with 8 
> different keys. On each Heartbeat the Map is searched and updated 
> ({{DatanodeStorageInfo storage = storageMap.get(s.getStorageID());}}):
> {code:title=DatanodeStorageInfo}
>   void updateState(StorageReport r) {
> capacity = r.getCapacity();
> dfsUsed = r.getDfsUsed();
> remaining = r.getRemaining();
> blockPoolUsed = r.getBlockPoolUsed();
>   }
> {code}
> On clusters that were upgraded from a pre HDFS-2832 version though the 
> storage Id has not been rewritten (at least not on the four clusters I 
> checked) so each directory will have the exact same storageId. That means 
> there'll be only a single entry in the {{storageMap}} and it'll be 
> overwritten by a random {{StorageReport}} from the DataNode. This can be seen 
> in the {{updateState}} method above. This just assigns the capacity from the 
> received report, instead it should probably sum it up per received heartbeat.
> The Balancer seems to be one of the only things that actually uses this 
> information so it now considers the utilization of a random drive per 
> DataNode for balancing purposes.
> Things get even worse when a drive has been added or replaced as this will 
> now get a new storage Id so there'll be two entries in the storageMap. As new 
> drives are usually empty it skewes the balancers decision in a way that this 
> node will never be consider

[jira] [Commented] (HDFS-3519) Checkpoint upload may interfere with a concurrent saveNamespace

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289343#comment-14289343
 ] 

Hudson commented on HDFS-3519:
--

FAILURE: Integrated in Hadoop-Mapreduce-trunk-Java8 #83 (See 
[https://builds.apache.org/job/Hadoop-Mapreduce-trunk-Java8/83/])
HDFS-3519. Checkpoint upload may interfere with a concurrent saveNamespace. 
Contributed by Ming Ma. (cnauroth: rev d3268c4b10a0f728b554ddb6d69b666a9ca13f12)
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/ImageServlet.java
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestStandbyCheckpoints.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java


> Checkpoint upload may interfere with a concurrent saveNamespace
> ---
>
> Key: HDFS-3519
> URL: https://issues.apache.org/jira/browse/HDFS-3519
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: namenode
>Reporter: Todd Lipcon
>Assignee: Ming Ma
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-3519-2.patch, HDFS-3519-3.patch, 
> HDFS-3519-branch-2.patch, HDFS-3519.patch, test-output.txt
>
>
> TestStandbyCheckpoints failed in [precommit build 
> 2620|https://builds.apache.org/job/PreCommit-HDFS-Build/2620//testReport/] 
> due to the following issue:
> - both nodes were in Standby state, and configured to checkpoint "as fast as 
> possible"
> - NN1 starts to save its own namespace
> - NN2 starts to upload a checkpoint for the same txid. So, both threads are 
> writing to the same file fsimage.ckpt_12, but the actual file contents 
> correspond to the uploading thread's data.
> - NN1 finished its saveNamespace operation while NN2 was still uploading. So, 
> it renamed the ckpt file. However, the contents of the file are still empty 
> since NN2 hasn't sent any bytes
> - NN2 finishes the upload, and the rename() call fails, which causes the 
> directory to be marked failed, etc.
> The result is that there is a file fsimage_12 which appears to be a finalized 
> image but in fact is incompletely transferred. When the transfer completes, 
> the problem "heals itself" so there wouldn't be persistent corruption unless 
> the machine crashes at the same time. And even then, we'd still have the 
> earlier checkpoint to restore from.
> This same race could occur in a non-HA setup if a user puts the NN in safe 
> mode and issues saveNamespace operations concurrent with a 2NN checkpointing, 
> I believe.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7660) BlockReceiver#close() might be called multiple times, which causes the fsvolume reference being released incorrectly.

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289345#comment-14289345
 ] 

Hudson commented on HDFS-7660:
--

FAILURE: Integrated in Hadoop-Mapreduce-trunk-Java8 #83 (See 
[https://builds.apache.org/job/Hadoop-Mapreduce-trunk-Java8/83/])
HDFS-7660. BlockReceiver#close() might be called multiple times, which causes 
the fsvolume reference being released incorrectly. (Lei Xu via yliu) (yliu: rev 
5f124efb3e090f96f217bee22f3c8897f9772f14)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockReceiver.java


> BlockReceiver#close() might be called multiple times, which causes the 
> fsvolume reference being released incorrectly.
> -
>
> Key: HDFS-7660
> URL: https://issues.apache.org/jira/browse/HDFS-7660
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 3.0.0
>Reporter: Lei (Eddy) Xu
>Assignee: Lei (Eddy) Xu
>Priority: Minor
> Fix For: 2.7.0
>
> Attachments: HDFS-7660.000.patch
>
>
> {{BlockReceiver.close()}} might be called from multiple places, e.g. 
> {{PacketResponder#finalizeBlock}} and {{BlockReceiver#receiveBlock}}. 
> As a result, {{BlockReceiver#replicaHander}} should be set to {{null}} after 
> release the resource.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7660) BlockReceiver#close() might be called multiple times, which causes the fsvolume reference being released incorrectly.

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289380#comment-14289380
 ] 

Hudson commented on HDFS-7660:
--

FAILURE: Integrated in Hadoop-Mapreduce-trunk #2033 (See 
[https://builds.apache.org/job/Hadoop-Mapreduce-trunk/2033/])
HDFS-7660. BlockReceiver#close() might be called multiple times, which causes 
the fsvolume reference being released incorrectly. (Lei Xu via yliu) (yliu: rev 
5f124efb3e090f96f217bee22f3c8897f9772f14)
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BlockReceiver.java
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> BlockReceiver#close() might be called multiple times, which causes the 
> fsvolume reference being released incorrectly.
> -
>
> Key: HDFS-7660
> URL: https://issues.apache.org/jira/browse/HDFS-7660
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 3.0.0
>Reporter: Lei (Eddy) Xu
>Assignee: Lei (Eddy) Xu
>Priority: Minor
> Fix For: 2.7.0
>
> Attachments: HDFS-7660.000.patch
>
>
> {{BlockReceiver.close()}} might be called from multiple places, e.g. 
> {{PacketResponder#finalizeBlock}} and {{BlockReceiver#receiveBlock}}. 
> As a result, {{BlockReceiver#replicaHander}} should be set to {{null}} after 
> release the resource.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3519) Checkpoint upload may interfere with a concurrent saveNamespace

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3519?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289378#comment-14289378
 ] 

Hudson commented on HDFS-3519:
--

FAILURE: Integrated in Hadoop-Mapreduce-trunk #2033 (See 
[https://builds.apache.org/job/Hadoop-Mapreduce-trunk/2033/])
HDFS-3519. Checkpoint upload may interfere with a concurrent saveNamespace. 
Contributed by Ming Ma. (cnauroth: rev d3268c4b10a0f728b554ddb6d69b666a9ca13f12)
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/ha/TestStandbyCheckpoints.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/ImageServlet.java
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> Checkpoint upload may interfere with a concurrent saveNamespace
> ---
>
> Key: HDFS-3519
> URL: https://issues.apache.org/jira/browse/HDFS-3519
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: namenode
>Reporter: Todd Lipcon
>Assignee: Ming Ma
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-3519-2.patch, HDFS-3519-3.patch, 
> HDFS-3519-branch-2.patch, HDFS-3519.patch, test-output.txt
>
>
> TestStandbyCheckpoints failed in [precommit build 
> 2620|https://builds.apache.org/job/PreCommit-HDFS-Build/2620//testReport/] 
> due to the following issue:
> - both nodes were in Standby state, and configured to checkpoint "as fast as 
> possible"
> - NN1 starts to save its own namespace
> - NN2 starts to upload a checkpoint for the same txid. So, both threads are 
> writing to the same file fsimage.ckpt_12, but the actual file contents 
> correspond to the uploading thread's data.
> - NN1 finished its saveNamespace operation while NN2 was still uploading. So, 
> it renamed the ckpt file. However, the contents of the file are still empty 
> since NN2 hasn't sent any bytes
> - NN2 finishes the upload, and the rename() call fails, which causes the 
> directory to be marked failed, etc.
> The result is that there is a file fsimage_12 which appears to be a finalized 
> image but in fact is incompletely transferred. When the transfer completes, 
> the problem "heals itself" so there wouldn't be persistent corruption unless 
> the machine crashes at the same time. And even then, we'd still have the 
> earlier checkpoint to restore from.
> This same race could occur in a non-HA setup if a user puts the NN in safe 
> mode and issues saveNamespace operations concurrent with a 2NN checkpointing, 
> I believe.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7575) Upgrade should generate a unique storage ID for each volume

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289376#comment-14289376
 ] 

Hudson commented on HDFS-7575:
--

FAILURE: Integrated in Hadoop-Mapreduce-trunk #2033 (See 
[https://builds.apache.org/job/Hadoop-Mapreduce-trunk/2033/])
HDFS-7575. Upgrade should generate a unique storage ID for each volume. 
(Contributed by Arpit Agarwal) (arp: rev 
d34074e237ee10b83aeb02294f595714d43e39e4)
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDFSUpgradeFromImage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeStartupFixesLegacyStorageIDs.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/TestDatanodeLayoutUpgrade.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22via26FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom26PreservesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.txt
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/UpgradeUtilities.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/protocol/DatanodeStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/resources/testUpgradeFrom22FixesStorageIDs.tgz
* 
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataStorage.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/fsdataset/impl/TestFsDatasetImpl.java
* 
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/SimulatedFSDataset.java
HDFS-7575. Fix CHANGES.txt (arp: rev 792b7d337a0edbc3da74099709c197e85ce38097)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> Upgrade should generate a unique storage ID for each volume
> ---
>
> Key: HDFS-7575
> URL: https://issues.apache.org/jira/browse/HDFS-7575
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 2.4.0, 2.5.0, 2.6.0
>Reporter: Lars Francke
>Assignee: Arpit Agarwal
>Priority: Critical
> Fix For: 2.7.0
>
> Attachments: HDFS-7575.01.patch, HDFS-7575.02.patch, 
> HDFS-7575.03.binary.patch, HDFS-7575.03.patch, HDFS-7575.04.binary.patch, 
> HDFS-7575.04.patch, HDFS-7575.05.binary.patch, HDFS-7575.05.patch, 
> testUpgrade22via24GeneratesStorageIDs.tgz, 
> testUpgradeFrom22GeneratesStorageIDs.tgz, 
> testUpgradeFrom24PreservesStorageId.tgz
>
>
> Before HDFS-2832 each DataNode would have a unique storageId which included 
> its IP address. Since HDFS-2832 the DataNodes have a unique storageId per 
> storage directory which is just a random UUID.
> They send reports per storage directory in their heartbeats. This heartbeat 
> is processed on the NameNode in the 
> {{DatanodeDescriptor#updateHeartbeatState}} method. Pre HDFS-2832 this would 
> just store the information per Datanode. After the patch though each DataNode 
> can have multiple different storages so it's stored in a map keyed by the 
> storage Id.
> This works fine for all clusters that have been installed post HDFS-2832 as 
> they get a UUID for their storage Id. So a DN with 8 drives has a map with 8 
> different keys. On each Heartbeat the Map is searched and updated 
> ({{DatanodeStorageInfo storage = storageMap.get(s.getStorageID());}}):
> {code:title=DatanodeStorageInfo}
>   void updateState(StorageReport r) {
> capacity = r.getCapacity();
> dfsUsed = r.getDfsUsed();
> remaining = r.getRemaining();
> blockPoolUsed = r.getBlockPoolUsed();
>   }
> {code}
> On clusters that were upgraded from a pre HDFS-2832 version though the 
> storage Id has not been rewritten (at least not on the four clusters I 
> checked) so each directory will have the exact same storageId. That means 
> there'll be only a single entry in the {{storageMap}} and it'll be 
> overwritten by a random {{StorageReport}} from the DataNode. This can be seen 
> in the {{updateState}} method above. This just assigns the capacity from the 
> received report, instead it should probably sum it up per received heartbeat.
> The Balancer seems to be one of the only things that actually uses this 
> information so it now considers the utilization of a random drive per 
> DataNode for balancing purposes.
> Things get even worse when a drive has been added or replaced as this will 
> now get a new storage Id so there'll be two entries in the storageMap. As new 
> drives are usually empty it skewes the balancers decision in a way that this 
> node will never be considered over-

[jira] [Commented] (HDFS-7609) startup used too much time to load edits

2015-01-23 Thread Kihwal Lee (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7609?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289533#comment-14289533
 ] 

Kihwal Lee commented on HDFS-7609:
--

Compared to 0.23, edit replaying in 2.x is 5x-10x slower.  This affects the 
namenode fail-over latency.   [~mingma] also reported this issue before and saw 
the retry cahe being the bottleneck.

> startup used too much time to load edits
> 
>
> Key: HDFS-7609
> URL: https://issues.apache.org/jira/browse/HDFS-7609
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: namenode
>Affects Versions: 2.2.0
>Reporter: Carrey Zhan
> Attachments: HDFS-7609-CreateEditsLogWithRPCIDs.patch, 
> recovery_do_not_use_retrycache.patch
>
>
> One day my namenode crashed because of two journal node timed out at the same 
> time under very high load, leaving behind about 100 million transactions in 
> edits log.(I still have no idea why they were not rolled into fsimage.)
> I tryed to restart namenode, but it showed that almost 20 hours would be 
> needed before finish, and it was loading fsedits most of the time. I also 
> tryed to restart namenode in recover mode, the loading speed had no different.
> I looked into the stack trace, judged that it is caused by the retry cache. 
> So I set dfs.namenode.enable.retrycache to false, the restart process 
> finished in half an hour.
> I think the retry cached is useless during startup, at least during recover 
> process.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (HDFS-7666) Datanode blockId layout upgrade threads should be daemon thread

2015-01-23 Thread Rakesh R (JIRA)
Rakesh R created HDFS-7666:
--

 Summary: Datanode blockId layout upgrade threads should be daemon 
thread
 Key: HDFS-7666
 URL: https://issues.apache.org/jira/browse/HDFS-7666
 Project: Hadoop HDFS
  Issue Type: Improvement
  Components: datanode
Reporter: Rakesh R
Assignee: Rakesh R


This jira is to mark the layout upgrade thread as daemon thread.

{code}
 int numLinkWorkers = datanode.getConf().getInt(
 DFSConfigKeys.DFS_DATANODE_BLOCK_ID_LAYOUT_UPGRADE_THREADS_KEY,
 DFSConfigKeys.DFS_DATANODE_BLOCK_ID_LAYOUT_UPGRADE_THREADS);
ExecutorService linkWorkers = Executors.newFixedThreadPool(numLinkWorkers);
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7666) Datanode blockId layout upgrade threads should be daemon thread

2015-01-23 Thread Rakesh R (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rakesh R updated HDFS-7666:
---
Attachment: HDFS-7666-v1.patch

> Datanode blockId layout upgrade threads should be daemon thread
> ---
>
> Key: HDFS-7666
> URL: https://issues.apache.org/jira/browse/HDFS-7666
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: datanode
>Reporter: Rakesh R
>Assignee: Rakesh R
> Attachments: HDFS-7666-v1.patch
>
>
> This jira is to mark the layout upgrade thread as daemon thread.
> {code}
>  int numLinkWorkers = datanode.getConf().getInt(
>  DFSConfigKeys.DFS_DATANODE_BLOCK_ID_LAYOUT_UPGRADE_THREADS_KEY,
>  DFSConfigKeys.DFS_DATANODE_BLOCK_ID_LAYOUT_UPGRADE_THREADS);
> ExecutorService linkWorkers = 
> Executors.newFixedThreadPool(numLinkWorkers);
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7666) Datanode blockId layout upgrade threads should be daemon thread

2015-01-23 Thread Rakesh R (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rakesh R updated HDFS-7666:
---
Status: Patch Available  (was: Open)

> Datanode blockId layout upgrade threads should be daemon thread
> ---
>
> Key: HDFS-7666
> URL: https://issues.apache.org/jira/browse/HDFS-7666
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: datanode
>Reporter: Rakesh R
>Assignee: Rakesh R
> Attachments: HDFS-7666-v1.patch
>
>
> This jira is to mark the layout upgrade thread as daemon thread.
> {code}
>  int numLinkWorkers = datanode.getConf().getInt(
>  DFSConfigKeys.DFS_DATANODE_BLOCK_ID_LAYOUT_UPGRADE_THREADS_KEY,
>  DFSConfigKeys.DFS_DATANODE_BLOCK_ID_LAYOUT_UPGRADE_THREADS);
> ExecutorService linkWorkers = 
> Executors.newFixedThreadPool(numLinkWorkers);
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-3689) Add support for variable length block

2015-01-23 Thread Jing Zhao (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-3689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jing Zhao updated HDFS-3689:

Attachment: HDFS-3689.009.patch

> Add support for variable length block
> -
>
> Key: HDFS-3689
> URL: https://issues.apache.org/jira/browse/HDFS-3689
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, hdfs-client, namenode
>Affects Versions: 3.0.0
>Reporter: Suresh Srinivas
>Assignee: Jing Zhao
> Attachments: HDFS-3689.000.patch, HDFS-3689.001.patch, 
> HDFS-3689.002.patch, HDFS-3689.003.patch, HDFS-3689.003.patch, 
> HDFS-3689.004.patch, HDFS-3689.005.patch, HDFS-3689.006.patch, 
> HDFS-3689.007.patch, HDFS-3689.008.patch, HDFS-3689.008.patch, 
> HDFS-3689.009.patch, HDFS-3689.009.patch
>
>
> Currently HDFS supports fixed length blocks. Supporting variable length block 
> will allow new use cases and features to be built on top of HDFS. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-3689) Add support for variable length block

2015-01-23 Thread Jing Zhao (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-3689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jing Zhao updated HDFS-3689:

Attachment: (was: HDFS-3689.009.patch)

> Add support for variable length block
> -
>
> Key: HDFS-3689
> URL: https://issues.apache.org/jira/browse/HDFS-3689
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, hdfs-client, namenode
>Affects Versions: 3.0.0
>Reporter: Suresh Srinivas
>Assignee: Jing Zhao
> Attachments: HDFS-3689.000.patch, HDFS-3689.001.patch, 
> HDFS-3689.002.patch, HDFS-3689.003.patch, HDFS-3689.003.patch, 
> HDFS-3689.004.patch, HDFS-3689.005.patch, HDFS-3689.006.patch, 
> HDFS-3689.007.patch, HDFS-3689.008.patch, HDFS-3689.008.patch, 
> HDFS-3689.009.patch
>
>
> Currently HDFS supports fixed length blocks. Supporting variable length block 
> will allow new use cases and features to be built on top of HDFS. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7609) startup used too much time to load edits

2015-01-23 Thread Ming Ma (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7609?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289642#comment-14289642
 ] 

Ming Ma commented on HDFS-7609:
---

Yeah, we also had this issue. It appears somehow an entry with the same client 
id and caller id has existed in retryCache; which ended up calling expensive 
PriorityQueue#remove function. Below is the call stack captured when standby 
was replaying the edit logs.

{noformat}
"Edit log tailer" prio=10 tid=0x7f096d491000 nid=0x533c runnable 
[0x7ef05ee7a000]
   java.lang.Thread.State: RUNNABLE
at java.util.PriorityQueue.removeAt(PriorityQueue.java:605)
at java.util.PriorityQueue.remove(PriorityQueue.java:364)
at 
org.apache.hadoop.util.LightWeightCache.put(LightWeightCache.java:218)
at org.apache.hadoop.ipc.RetryCache.addCacheEntry(RetryCache.java:296)
- locked <0x7ef2fe306978> (a org.apache.hadoop.ipc.RetryCache)
at 
org.apache.hadoop.hdfs.server.namenode.FSNamesystem.addCacheEntry(FSNamesystem.java:801)
at 
org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.applyEditLogOp(FSEditLogLoader.java:507)
at 
org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.loadEditRecords(FSEditLogLoader.java:224)
at 
org.apache.hadoop.hdfs.server.namenode.FSEditLogLoader.loadFSEdits(FSEditLogLoader.java:133)
at 
org.apache.hadoop.hdfs.server.namenode.FSImage.loadEdits(FSImage.java:804)
at 
org.apache.hadoop.hdfs.server.namenode.FSImage.loadEdits(FSImage.java:785)
at 
org.apache.hadoop.hdfs.server.namenode.ha.EditLogTailer.doTailEdits(EditLogTailer.java:230)
at 
org.apache.hadoop.hdfs.server.namenode.ha.EditLogTailer$EditLogTailerThread.doWork(EditLogTailer.java:324)
at 
org.apache.hadoop.hdfs.server.namenode.ha.EditLogTailer$EditLogTailerThread.access$200(EditLogTailer.java:282)
at 
org.apache.hadoop.hdfs.server.namenode.ha.EditLogTailer$EditLogTailerThread$1.run(EditLogTailer.java:299)
at 
org.apache.hadoop.security.SecurityUtil.doAsLoginUserOrFatal(SecurityUtil.java:415)
at 
org.apache.hadoop.hdfs.server.namenode.ha.EditLogTailer$EditLogTailerThread.run(EditLogTailer.java:295)
{noformat}


> startup used too much time to load edits
> 
>
> Key: HDFS-7609
> URL: https://issues.apache.org/jira/browse/HDFS-7609
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: namenode
>Affects Versions: 2.2.0
>Reporter: Carrey Zhan
> Attachments: HDFS-7609-CreateEditsLogWithRPCIDs.patch, 
> recovery_do_not_use_retrycache.patch
>
>
> One day my namenode crashed because of two journal node timed out at the same 
> time under very high load, leaving behind about 100 million transactions in 
> edits log.(I still have no idea why they were not rolled into fsimage.)
> I tryed to restart namenode, but it showed that almost 20 hours would be 
> needed before finish, and it was loading fsedits most of the time. I also 
> tryed to restart namenode in recover mode, the loading speed had no different.
> I looked into the stack trace, judged that it is caused by the retry cache. 
> So I set dfs.namenode.enable.retrycache to false, the restart process 
> finished in half an hour.
> I think the retry cached is useless during startup, at least during recover 
> process.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-3689) Add support for variable length block

2015-01-23 Thread Jing Zhao (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-3689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jing Zhao updated HDFS-3689:

Attachment: HDFS-3689.009.patch
editsStored

> Add support for variable length block
> -
>
> Key: HDFS-3689
> URL: https://issues.apache.org/jira/browse/HDFS-3689
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, hdfs-client, namenode
>Affects Versions: 3.0.0
>Reporter: Suresh Srinivas
>Assignee: Jing Zhao
> Attachments: HDFS-3689.000.patch, HDFS-3689.001.patch, 
> HDFS-3689.002.patch, HDFS-3689.003.patch, HDFS-3689.003.patch, 
> HDFS-3689.004.patch, HDFS-3689.005.patch, HDFS-3689.006.patch, 
> HDFS-3689.007.patch, HDFS-3689.008.patch, HDFS-3689.008.patch, 
> HDFS-3689.009.patch, HDFS-3689.009.patch, editsStored
>
>
> Currently HDFS supports fixed length blocks. Supporting variable length block 
> will allow new use cases and features to be built on top of HDFS. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7337) Configurable and pluggable Erasure Codec and schema

2015-01-23 Thread Andrew Wang (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7337?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289686#comment-14289686
 ] 

Andrew Wang commented on HDFS-7337:
---

I don't think it's necessary to move to HADOOP. If anything, I find it 
conceptually easier if everything related to erasure encoding stayed a subtask 
of HDFS-7285.

> Configurable and pluggable Erasure Codec and schema
> ---
>
> Key: HDFS-7337
> URL: https://issues.apache.org/jira/browse/HDFS-7337
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Zhe Zhang
>Assignee: Kai Zheng
> Attachments: HDFS-7337-prototype-v1.patch, 
> HDFS-7337-prototype-v2.zip, HDFS-7337-prototype-v3.zip, 
> PluggableErasureCodec.pdf
>
>
> According to HDFS-7285 and the design, this considers to support multiple 
> Erasure Codecs via pluggable approach. It allows to define and configure 
> multiple codec schemas with different coding algorithms and parameters. The 
> resultant codec schemas can be utilized and specified via command tool for 
> different file folders. While design and implement such pluggable framework, 
> it’s also to implement a concrete codec by default (Reed Solomon) to prove 
> the framework is useful and workable. Separate JIRA could be opened for the 
> RS codec implementation.
> Note HDFS-7353 will focus on the very low level codec API and implementation 
> to make concrete vendor libraries transparent to the upper layer. This JIRA 
> focuses on high level stuffs that interact with configuration, schema and etc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7648) Verify the datanode directory layout

2015-01-23 Thread Rakesh R (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289698#comment-14289698
 ] 

Rakesh R commented on HDFS-7648:


[~szetszwo] I'm going through the "block ID-based block layout on datanodes" 
design and I come across this jira. I'm interested to implement this idea. I 
feel block report generation would be feasible one. Could you briefly explain 
about the verification points if you have anything specific in your mind. 
Thanks!

> Verify the datanode directory layout
> 
>
> Key: HDFS-7648
> URL: https://issues.apache.org/jira/browse/HDFS-7648
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: datanode
>Reporter: Tsz Wo Nicholas Sze
>
> HDFS-6482 changed datanode layout to use block ID to determine the directory 
> to store the block.  We should have some mechanism to verify it.  Either 
> DirectoryScanner or block report generation do the check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7648) Verify the datanode directory layout

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7648?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz Wo Nicholas Sze updated HDFS-7648:
--
Description: HDFS-6482 changed datanode layout to use block ID to determine 
the directory to store the block.  We should have some mechanism to verify it.  
Either DirectoryScanner or block report generation could do the check.  (was: 
HDFS-6482 changed datanode layout to use block ID to determine the directory to 
store the block.  We should have some mechanism to verify it.  Either 
DirectoryScanner or block report generation do the check.)

> Verify the datanode directory layout
> 
>
> Key: HDFS-7648
> URL: https://issues.apache.org/jira/browse/HDFS-7648
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: datanode
>Reporter: Tsz Wo Nicholas Sze
>
> HDFS-6482 changed datanode layout to use block ID to determine the directory 
> to store the block.  We should have some mechanism to verify it.  Either 
> DirectoryScanner or block report generation could do the check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7647) DatanodeManager.sortLocatedBlocks() sorts DatanodeInfos but not StorageIDs

2015-01-23 Thread Arpit Agarwal (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7647?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289725#comment-14289725
 ] 

Arpit Agarwal commented on HDFS-7647:
-

Thanks for the patch [~milandesai], this looks like a good change.

Couple of comments:
# {{LocatedBlocks.getStorageTypes}} and {{.getStorageIDs}} should cache the 
generated arrays on first invocation since existing callers expect these calls 
to be cheap. Except for the sorting code the content of {{locs}} is not 
modified once the object is initialized.
# The sorting code must invalidate the cached arrays from 1.
# We should add a unit test for sortLocatedBlocks specifically for the 
invalidation.
# Also it would be good to add a comment to {{LocatedBlocks}} stating the 
assumption that {{locs}} must not be modified by the caller, with the exception 
of {{sortLocatedBlocks}}.

In a separate Jira it would be good to make {{locs}} an unmodifiable list or a 
Guava {{ImmutableList}}. The source of the issue is that an external function 
reaches into the LocatedBlock object and modifies its private fields. It 
doesn't help that Java lacks support for C++-style const arrays.

> DatanodeManager.sortLocatedBlocks() sorts DatanodeInfos but not StorageIDs
> --
>
> Key: HDFS-7647
> URL: https://issues.apache.org/jira/browse/HDFS-7647
> Project: Hadoop HDFS
>  Issue Type: Bug
>Affects Versions: 2.6.0
>Reporter: Milan Desai
>Assignee: Milan Desai
> Attachments: HDFS-7647-2.patch, HDFS-7647.patch
>
>
> DatanodeManager.sortLocatedBlocks() sorts the array of DatanodeInfos inside 
> each LocatedBlock, but does not touch the array of StorageIDs and 
> StorageTypes. As a result, the DatanodeInfos and StorageIDs/StorageTypes are 
> mismatched. The method is called by FSNamesystem.getBlockLocations(), so the 
> client will not know which StorageID/Type corresponds to which DatanodeInfo.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7648) Verify the datanode directory layout

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289727#comment-14289727
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7648:
---

During block report generation or directory scanning, it traverses the 
directory for collecting all the replica information.  We should verify whether 
the actual directory location of a replica has the expected directory path 
computed using its block ID.  If a mismatch is found, it should also fix it.  
On a second thought, DirectoryScanner seems a better place to do the 
verification since the purpose of the DirectoryScanner is to verify and fix the 
blocks stored in the local directories.  What do you think?

> Verify the datanode directory layout
> 
>
> Key: HDFS-7648
> URL: https://issues.apache.org/jira/browse/HDFS-7648
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: datanode
>Reporter: Tsz Wo Nicholas Sze
>
> HDFS-6482 changed datanode layout to use block ID to determine the directory 
> to store the block.  We should have some mechanism to verify it.  Either 
> DirectoryScanner or block report generation could do the check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7584) Enable Quota Support for Storage Types (SSD)

2015-01-23 Thread Xiaoyu Yao (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Xiaoyu Yao updated HDFS-7584:
-
Attachment: HDFS-7584.2.patch

> Enable Quota Support for Storage Types (SSD) 
> -
>
> Key: HDFS-7584
> URL: https://issues.apache.org/jira/browse/HDFS-7584
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, namenode
>Reporter: Xiaoyu Yao
>Assignee: Xiaoyu Yao
> Attachments: HDFS-7584 Quota by Storage Type - 01202015.pdf, 
> HDFS-7584.0.patch, HDFS-7584.1.patch, HDFS-7584.2.patch, editsStored
>
>
> Phase II of the Heterogeneous storage features have completed by HDFS-6584. 
> This JIRA is opened to enable Quota support of different storage types in 
> terms of storage space usage. This is more important for certain storage 
> types such as SSD as it is precious and more performant. 
> As described in the design doc of HDFS-5682, we plan to add new 
> quotaByStorageType command and new name node RPC protocol for it. The quota 
> by storage type feature is applied to HDFS directory level similar to 
> traditional HDFS space quota. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7584) Enable Quota Support for Storage Types (SSD)

2015-01-23 Thread Xiaoyu Yao (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7584?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Xiaoyu Yao updated HDFS-7584:
-
Attachment: HDFS-7584.3.patch

Include the editsStored binary in the patch.

> Enable Quota Support for Storage Types (SSD) 
> -
>
> Key: HDFS-7584
> URL: https://issues.apache.org/jira/browse/HDFS-7584
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, namenode
>Reporter: Xiaoyu Yao
>Assignee: Xiaoyu Yao
> Attachments: HDFS-7584 Quota by Storage Type - 01202015.pdf, 
> HDFS-7584.0.patch, HDFS-7584.1.patch, HDFS-7584.2.patch, HDFS-7584.3.patch, 
> editsStored
>
>
> Phase II of the Heterogeneous storage features have completed by HDFS-6584. 
> This JIRA is opened to enable Quota support of different storage types in 
> terms of storage space usage. This is more important for certain storage 
> types such as SSD as it is precious and more performant. 
> As described in the design doc of HDFS-5682, we plan to add new 
> quotaByStorageType command and new name node RPC protocol for it. The quota 
> by storage type feature is applied to HDFS directory level similar to 
> traditional HDFS space quota. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7353) Raw Erasure Coder API for concrete encoding and decoding

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7353?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289765#comment-14289765
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7353:
---

Thanks for the update.  Some comments:
- ec also can mean error correcting.  How about renaming the package to 
io.erasure?  Then, using EC inside the package won't be ambiguous.
- Should the package be moved under hdfs?  Do you expect that it will be used 
outside hdfs?
- Please explain what it means by "Raw" in the javadoc.
- By "The number of elements", do you mean "length in bytes"?  Should it be 
long instead of int?
- The javadoc "An abstract raw erasure decoder class" does not really explain 
what the class does.  Could you add more description about how the class is 
used and the relationship with the other classes?
- protected methods, especially the ones with abstract, should also has javadoc.
- There are some tab characters.  We should replace them using spaces.

> Raw Erasure Coder API for concrete encoding and decoding
> 
>
> Key: HDFS-7353
> URL: https://issues.apache.org/jira/browse/HDFS-7353
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Kai Zheng
>Assignee: Kai Zheng
> Fix For: HDFS-EC
>
> Attachments: HDFS-7353-v1.patch, HDFS-7353-v2.patch
>
>
> This is to abstract and define raw erasure coder API across different codes 
> algorithms like RS, XOR and etc. Such API can be implemented by utilizing 
> various library support, such as Intel ISA library and Jerasure library.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7653) Block Readers and Writers used in both client side and datanode side

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7653?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289772#comment-14289772
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7653:
---

Sound good.  Thanks!

> Block Readers and Writers used in both client side and datanode side
> 
>
> Key: HDFS-7653
> URL: https://issues.apache.org/jira/browse/HDFS-7653
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Li Bo
>Assignee: Li Bo
> Attachments: BlockReadersWriters.patch
>
>
> There're a lot of block read/write operations in HDFS-EC, for example, when 
> client writes a file in striping layout, client has to write several blocks 
> to several different datanodes; if a datanode wants to do an 
> encoding/decoding task, it has to read several blocks from itself and other 
> datanodes, and writes one or more blocks to itself or other datanodes.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7648) Verify the datanode directory layout

2015-01-23 Thread Rakesh R (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289778#comment-14289778
 ] 

Rakesh R commented on HDFS-7648:


bq.If a mismatch is found, it should also fix it
Should I need to worry about the race between 
DatanodeBlockId_Layout_threads(they will do a linking ) in Datastorage and this 
call path?

bq. DirectoryScanner seems a better place to do the verification
Thanks for the hint. Let me try this as well.


> Verify the datanode directory layout
> 
>
> Key: HDFS-7648
> URL: https://issues.apache.org/jira/browse/HDFS-7648
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: datanode
>Reporter: Tsz Wo Nicholas Sze
>
> HDFS-6482 changed datanode layout to use block ID to determine the directory 
> to store the block.  We should have some mechanism to verify it.  Either 
> DirectoryScanner or block report generation could do the check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7648) Verify the datanode directory layout

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289787#comment-14289787
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7648:
---

> Should I need to worry about the race between 
> DatanodeBlockId_Layout_threads(they will do a linking ) in Datastorage and 
> this call path?

Could you show me the line number in DataStorage.java?

> Verify the datanode directory layout
> 
>
> Key: HDFS-7648
> URL: https://issues.apache.org/jira/browse/HDFS-7648
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: datanode
>Reporter: Tsz Wo Nicholas Sze
>
> HDFS-6482 changed datanode layout to use block ID to determine the directory 
> to store the block.  We should have some mechanism to verify it.  Either 
> DirectoryScanner or block report generation could do the check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7337) Configurable and pluggable Erasure Codec and schema

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7337?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289780#comment-14289780
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7337:
---

Do you expect that the erasure code package will be used outside hdfs?  If not, 
we could put everything under hdfs for the moment.

> Configurable and pluggable Erasure Codec and schema
> ---
>
> Key: HDFS-7337
> URL: https://issues.apache.org/jira/browse/HDFS-7337
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Zhe Zhang
>Assignee: Kai Zheng
> Attachments: HDFS-7337-prototype-v1.patch, 
> HDFS-7337-prototype-v2.zip, HDFS-7337-prototype-v3.zip, 
> PluggableErasureCodec.pdf
>
>
> According to HDFS-7285 and the design, this considers to support multiple 
> Erasure Codecs via pluggable approach. It allows to define and configure 
> multiple codec schemas with different coding algorithms and parameters. The 
> resultant codec schemas can be utilized and specified via command tool for 
> different file folders. While design and implement such pluggable framework, 
> it’s also to implement a concrete codec by default (Reed Solomon) to prove 
> the framework is useful and workable. Separate JIRA could be opened for the 
> RS codec implementation.
> Note HDFS-7353 will focus on the very low level codec API and implementation 
> to make concrete vendor libraries transparent to the upper layer. This JIRA 
> focuses on high level stuffs that interact with configuration, schema and etc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7421) Move processing of postponed over-replicated blocks to a background task

2015-01-23 Thread Aaron T. Myers (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7421?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289795#comment-14289795
 ] 

Aaron T. Myers commented on HDFS-7421:
--

Hey Kihwal, yes indeed, this seems like a dupe. I'll go ahead and close this 
one. Thanks for pointing that out, and thanks for filing/fixing the issue in 
HDFS-6425.

> Move processing of postponed over-replicated blocks to a background task
> 
>
> Key: HDFS-7421
> URL: https://issues.apache.org/jira/browse/HDFS-7421
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: ha, namenode
>Affects Versions: 2.6.0
>Reporter: Aaron T. Myers
>Assignee: Aaron T. Myers
>
> In an HA environment, we postpone sending block invalidates to DNs until all 
> DNs holding a given block have done at least one block report to the NN after 
> it became active. When that first block report after becoming active does 
> occur, we attempt to reprocess all postponed misreplicated blocks inline with 
> the block report RPC. In the case where there are many postponed 
> misreplicated blocks, this can cause block report RPCs to take an 
> inordinately long time to complete, sometimes on the order of minutes, which 
> has the potential to tie up RPC handlers, block incoming RPCs, etc. There's 
> no need to hurriedly process all postponed misreplicated blocks so that we 
> can quickly send invalidate commands back to DNs, so let's move this 
> processing outside of the RPC handler context and into a background thread.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Resolved] (HDFS-7421) Move processing of postponed over-replicated blocks to a background task

2015-01-23 Thread Aaron T. Myers (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7421?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Aaron T. Myers resolved HDFS-7421.
--
Resolution: Duplicate

> Move processing of postponed over-replicated blocks to a background task
> 
>
> Key: HDFS-7421
> URL: https://issues.apache.org/jira/browse/HDFS-7421
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: ha, namenode
>Affects Versions: 2.6.0
>Reporter: Aaron T. Myers
>Assignee: Aaron T. Myers
>
> In an HA environment, we postpone sending block invalidates to DNs until all 
> DNs holding a given block have done at least one block report to the NN after 
> it became active. When that first block report after becoming active does 
> occur, we attempt to reprocess all postponed misreplicated blocks inline with 
> the block report RPC. In the case where there are many postponed 
> misreplicated blocks, this can cause block report RPCs to take an 
> inordinately long time to complete, sometimes on the order of minutes, which 
> has the potential to tie up RPC handlers, block incoming RPCs, etc. There's 
> no need to hurriedly process all postponed misreplicated blocks so that we 
> can quickly send invalidate commands back to DNs, so let's move this 
> processing outside of the RPC handler context and into a background thread.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7648) Verify the datanode directory layout

2015-01-23 Thread Rakesh R (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289822#comment-14289822
 ] 

Rakesh R commented on HDFS-7648:


Ah, this is upgrade path.

{{DataStorage.java:}}
{code}
line#1036

ExecutorService linkWorkers = Executors.newFixedThreadPool(numLinkWorkers);
.
.
futures.add(linkWorkers.submit(new Callable() {
{code}

> Verify the datanode directory layout
> 
>
> Key: HDFS-7648
> URL: https://issues.apache.org/jira/browse/HDFS-7648
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: datanode
>Reporter: Tsz Wo Nicholas Sze
>
> HDFS-6482 changed datanode layout to use block ID to determine the directory 
> to store the block.  We should have some mechanism to verify it.  Either 
> DirectoryScanner or block report generation could do the check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Created] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Charles Lamb (JIRA)
Charles Lamb created HDFS-7667:
--

 Summary: Various typos and improvements to HDFS Federation doc
 Key: HDFS-7667
 URL: https://issues.apache.org/jira/browse/HDFS-7667
 Project: Hadoop HDFS
  Issue Type: Bug
  Components: documentation
Affects Versions: 2.6.0
Reporter: Charles Lamb
Assignee: Charles Lamb
Priority: Minor


Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Charles Lamb (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Charles Lamb updated HDFS-7667:
---
Attachment: HDFS-7667.000.patch

Diffs attached.

> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Attachments: HDFS-7667.000.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Charles Lamb (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Charles Lamb updated HDFS-7667:
---
Status: Patch Available  (was: Open)

> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Attachments: HDFS-7667.000.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Allen Wittenauer (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289828#comment-14289828
 ] 

Allen Wittenauer commented on HDFS-7667:


While you're there, fix:

{code}
$HADOOP_PREFIX/bin/hdfs start namenode --config $HADOOP_CONF_DIR  -upgrade 
-clusterId 
{code}

to be

{code}
$HADOOP_PREFIX/bin/hdfs --daemon start namenode --config $HADOOP_CONF_DIR  
-upgrade -clusterId 
{code}


Also be aware that this may not apply to 2.x.  The documentation is different.

> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Attachments: HDFS-7667.000.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Allen Wittenauer (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289838#comment-14289838
 ] 

Allen Wittenauer commented on HDFS-7667:


Oh, should probably drop --config $HADOOP_CONF_DIR , since that's pretty 
useless as well.

> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Attachments: HDFS-7667.000.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Charles Lamb (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Charles Lamb updated HDFS-7667:
---
Attachment: HDFS-7667.001.patch

[~aw],

Thanks for looking it over. The .001 version makes those two changes.

> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Attachments: HDFS-7667.000.patch, HDFS-7667.001.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7648) Verify the datanode directory layout

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7648?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289855#comment-14289855
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7648:
---

Yes. It won't be a problem then.

> Verify the datanode directory layout
> 
>
> Key: HDFS-7648
> URL: https://issues.apache.org/jira/browse/HDFS-7648
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: datanode
>Reporter: Tsz Wo Nicholas Sze
>
> HDFS-6482 changed datanode layout to use block ID to determine the directory 
> to store the block.  We should have some mechanism to verify it.  Either 
> DirectoryScanner or block report generation could do the check.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7339) Allocating and persisting block groups in NameNode

2015-01-23 Thread Zhe Zhang (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289868#comment-14289868
 ] 

Zhe Zhang commented on HDFS-7339:
-

[~jingzhao] Thanks for the insightful review! I believe this discussion also 
addresses comments from [~szetszwo] under HDFS-7285, HDFS-7614, and HDFS-7652. 

The main reason for creating a BlockGroup class and the hierarchical block ID 
protocol is to _minimize NN memory overhead_. As shown in the [fsimage analysis 
| 
https://issues.apache.org/jira/secure/attachment/12690129/fsimage-analysis-20150105.pdf],
 the {{blocksMap}} size increases 3.5x~5.4x if the NN plainly tracks every 
striped block -- this translates to 10s GB of memory usage. This is mainly 
caused by small blocks being striped into many more even smaller blocks. 

bq. I think DataNode does not need to know the difference between contiguous 
blocks and stripped blocks (when doing recovery the datanode can learn the 
information from NameNode). The concept of BlockGroup should be known and used 
only internally in NameNode (and maybe also logically known by the client while 
writing). 
bq. Datanodes and their block reports do not distinguish stripped and 
contiguous blocks. And we do not need to distinguish them from the block ID. 
They are treated equally while storing and reporting in/from the DN.
Agreed. DN is indeed group-agnostic in the current design. The only DN code 
change will be for block recovery and conversion. It will probably be clearer 
when the client patch (HDFS-7545) is ready. As shown in the [design | 
https://issues.apache.org/jira/secure/attachment/12687886/DataStripingSupportinHDFSClient.pdf],
 after receiving a newly allocated block group, the client does the following:
# Calculates blocks IDs from the block group ID and the group layout (number of 
data and parity blocks) -- a block's ID is basically the group ID plus the 
block's index in the group.
# The {{DFSOutputStream}} starts _n_ {{DataStreamer}} threads, each write one 
block to its destination DN. Note that even the {{DataStreamer}} is unaware of 
the group -- it just follows the regular client-DN block writing protocol. 
Therefore the DN just receives and processes regular block creation and write 
requests.

The DN then follows the regular block reporting protocol for all contiguous and 
striped blocks. Then the NN (with the logic from HDFS-7652) will parse the 
reported block ID, and store the reported info under either {{blocksMap}} or 
the map of block groups. Again, the benefit of having a separate map for block 
groups is to avoid the order-of-magnitude increase of {{blocksMap}} size. 

We can track on the unit of block groups because data loss can only happen when 
the entire group is "under-replicated" -- i.e. the number of healthy blocks in 
the group falls below a threshold. This coarse-grained tracking also aligns 
with the plan to push some monitoring and recovery workload from NN to DN, as 
[~sureshms] also [proposed | 
https://issues.apache.org/jira/browse/HDFS-7285?focusedCommentId=14192480&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14192480]
 in the meetup. 

bq. Fundamentally BlockGroup is also a BlockCollection. We do not need to 
assign generation stamp to BlockGroup (and even its id can be omitted). What we 
need is only maintaining the mapping between block and blockgroup in the 
original blocksmap, recording the list of blocks in the blockgroup, and 
recording the blockgroups in INodeFile.
This is an interesting thought and does simplify the code. But it seems to me 
the added complexity of tracking block groups is necessary to avoid heavy NN 
overhead. The generation stamp of a block group will be used to derive the 
stamps for its blocks (this logic is not included in the patch yet).

bq. I think in this way we can simplify the current design and reuse most of 
the current block management code. 
Reusing block management code is a great point. While developing this patch I 
did have to take many {{Block}} management logics and create counterparts for 
{{BlockGroup}}. One possibility is to create a "common ancestor" class for 
{{Block}} and {{BlockGroup}} (e.g., {{GeneralizedBlock}}). Main commonalities 
being:
# Both represent a contiguous range of data in a file. Therefore each file 
consists of an array of {{GeneralizedBlock}}.
# Both are a separate unit for NN monitoring. Therefore {{BlocksMap}} can work 
with {{GeneralizedBlock}}
# Both have a capacity and a set of storage locations

Another alternative to reuse block mgmt code is to treat each {{Block}} as a 
single-member {{BlockGroup}}. 

I discussed the above 2 alternatives offline with [~andrew.wang] and we are 
inclined to use separate block group management code in this JIRA and start a 
refactoring JIRA after more logics are fleshed out. At that time we'll see more 
clearly which option is easier.


[jira] [Commented] (HDFS-7285) Erasure Coding Support inside HDFS

2015-01-23 Thread Zhe Zhang (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7285?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289871#comment-14289871
 ] 

Zhe Zhang commented on HDFS-7285:
-

Thanks for clarifying.

bq. After some discussion with Jing, we think that block group ID is not needed 
at all – we only need to keep the block group index within a file. Will give 
more details later.
This is [discussed | 
https://issues.apache.org/jira/browse/HDFS-7339?focusedCommentId=14289868&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14289868]
 under HDFS-7339.

> Erasure Coding Support inside HDFS
> --
>
> Key: HDFS-7285
> URL: https://issues.apache.org/jira/browse/HDFS-7285
> Project: Hadoop HDFS
>  Issue Type: New Feature
>Reporter: Weihua Jiang
>Assignee: Zhe Zhang
> Attachments: ECAnalyzer.py, ECParser.py, 
> HDFSErasureCodingDesign-20141028.pdf, HDFSErasureCodingDesign-20141217.pdf, 
> fsimage-analysis-20150105.pdf
>
>
> Erasure Coding (EC) can greatly reduce the storage overhead without sacrifice 
> of data reliability, comparing to the existing HDFS 3-replica approach. For 
> example, if we use a 10+4 Reed Solomon coding, we can allow loss of 4 blocks, 
> with storage overhead only being 40%. This makes EC a quite attractive 
> alternative for big data storage, particularly for cold data. 
> Facebook had a related open source project called HDFS-RAID. It used to be 
> one of the contribute packages in HDFS but had been removed since Hadoop 2.0 
> for maintain reason. The drawbacks are: 1) it is on top of HDFS and depends 
> on MapReduce to do encoding and decoding tasks; 2) it can only be used for 
> cold files that are intended not to be appended anymore; 3) the pure Java EC 
> coding implementation is extremely slow in practical use. Due to these, it 
> might not be a good idea to just bring HDFS-RAID back.
> We (Intel and Cloudera) are working on a design to build EC into HDFS that 
> gets rid of any external dependencies, makes it self-contained and 
> independently maintained. This design lays the EC feature on the storage type 
> support and considers compatible with existing HDFS features like caching, 
> snapshot, encryption, high availability and etc. This design will also 
> support different EC coding schemes, implementations and policies for 
> different deployment scenarios. By utilizing advanced libraries (e.g. Intel 
> ISA-L library), an implementation can greatly improve the performance of EC 
> encoding/decoding and makes the EC solution even more attractive. We will 
> post the design document soon. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7614) Implement COMPLETE state of erasure coding block groups

2015-01-23 Thread Zhe Zhang (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7614?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289875#comment-14289875
 ] 

Zhe Zhang commented on HDFS-7614:
-

This design question is mainly [discussed | 
https://issues.apache.org/jira/browse/HDFS-7339?focusedCommentId=14289868&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14289868]
 under HDFS-7339.

> Implement COMPLETE state of erasure coding block groups
> ---
>
> Key: HDFS-7614
> URL: https://issues.apache.org/jira/browse/HDFS-7614
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Zhe Zhang
>Assignee: Zhe Zhang
>
> HDFS-7339 implements 2 states of an under-construction block group: 
> {{UNDER_CONSTRUCTION}} and {{COMMITTED}}. The  {{COMPLETE}} requires DataNode 
> to report stored replicas, therefore will be separately implemented in this 
> JIRA.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7652) Process block reports for erasure coded blocks

2015-01-23 Thread Zhe Zhang (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7652?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289879#comment-14289879
 ] 

Zhe Zhang commented on HDFS-7652:
-

This design question is mainly [discussed | 
https://issues.apache.org/jira/browse/HDFS-7339?focusedCommentId=14289868&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14289868]
 under HDFS-7339

Again, I really appreciate the in-depth thoughts! [~szetszwo] [~jingzhao]


> Process block reports for erasure coded blocks
> --
>
> Key: HDFS-7652
> URL: https://issues.apache.org/jira/browse/HDFS-7652
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Zhe Zhang
>Assignee: Zhe Zhang
>
> HDFS-7339 adds support in NameNode for persisting block groups. For memory 
> efficiency, erasure coded blocks under the striping layout are not stored in 
> {{BlockManager#blocksMap}}. Instead, entire block groups are stored in 
> {{BlockGroupManager#blockGroups}}. When a block report arrives from the 
> DataNode, it should be processed under the block group that it belongs to. 
> The following naming protocol is used to calculate the group of a given block:
> {code}
>  * HDFS-EC introduces a hierarchical protocol to name blocks and groups:
>  * Contiguous: {reserved block IDs | flag | block ID}
>  * Striped: {reserved block IDs | flag | block group ID | index in group}
>  *
>  * Following n bits of reserved block IDs, The (n+1)th bit in an ID
>  * distinguishes contiguous (0) and striped (1) blocks. For a striped block,
>  * bits (n+2) to (64-m) represent the ID of its block group, while the last m
>  * bits represent its index of the group. The value m is determined by the
>  * maximum number of blocks in a group (MAX_BLOCKS_IN_GROUP).
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7339) Allocating and persisting block groups in NameNode

2015-01-23 Thread Zhe Zhang (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289901#comment-14289901
 ] 

Zhe Zhang commented on HDFS-7339:
-

bq. First a quick comment about the current SequentialBlockGroupIdGenerator and 
SequentialBlockIdGenerator. The current patch tries to use a flag to 
distinguish contiguous and stripped blocks. However, since there may still be 
conflicts coming from historical randomly assigned block ID, for blocks in 
block reports, we still to check two places to determine if this is a 
contiguous block or a stripped block.
If a block's ID has the 'striped' flag bit, we always _attempt_ to look up the 
block group map first. Without rolling upgrade we only need this one lookup. 
And yes, we do need to check two places in the worst case. Given that HDFS-4645 
will be over 2 years old by the time erasure coding is released, I guess this 
won't happen a lot?

> Allocating and persisting block groups in NameNode
> --
>
> Key: HDFS-7339
> URL: https://issues.apache.org/jira/browse/HDFS-7339
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Zhe Zhang
>Assignee: Zhe Zhang
> Attachments: HDFS-7339-001.patch, HDFS-7339-002.patch, 
> HDFS-7339-003.patch, HDFS-7339-004.patch, HDFS-7339-005.patch, 
> HDFS-7339-006.patch, Meta-striping.jpg, NN-stripping.jpg
>
>
> All erasure codec operations center around the concept of _block group_; they 
> are formed in initial encoding and looked up in recoveries and conversions. A 
> lightweight class {{BlockGroup}} is created to record the original and parity 
> blocks in a coding group, as well as a pointer to the codec schema (pluggable 
> codec schemas will be supported in HDFS-7337). With the striping layout, the 
> HDFS client needs to operate on all blocks in a {{BlockGroup}} concurrently. 
> Therefore we propose to extend a file’s inode to switch between _contiguous_ 
> and _striping_ modes, with the current mode recorded in a binary flag. An 
> array of BlockGroups (or BlockGroup IDs) is added, which remains empty for 
> “traditional” HDFS files with contiguous block layout.
> The NameNode creates and maintains {{BlockGroup}} instances through the new 
> {{ECManager}} component; the attached figure has an illustration of the 
> architecture. As a simple example, when a {_Striping+EC_} file is created and 
> written to, it will serve requests from the client to allocate new 
> {{BlockGroups}} and store them under the {{INodeFile}}. In the current phase, 
> {{BlockGroups}} are allocated both in initial online encoding and in the 
> conversion from replication to EC. {{ECManager}} also facilitates the lookup 
> of {{BlockGroup}} information for block recovery work.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Allen Wittenauer (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289985#comment-14289985
 ] 

Allen Wittenauer commented on HDFS-7667:


There are other problems in the doc. but I don't know if you want to fix them 
now or wait till later. Following the mantra of "Don't let best stop better", 
I'm +1 for committing this to trunk.  Let me know if you want to continue 
working on it or commit this version now. :)

Thanks!

> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Attachments: HDFS-7667.000.patch, HDFS-7667.001.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3689) Add support for variable length block

2015-01-23 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3689?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289966#comment-14289966
 ] 

Hadoop QA commented on HDFS-3689:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12694208/HDFS-3689.009.patch
  against trunk revision 24aa462.

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:green}+1 tests included{color}.  The patch appears to include 14 new 
or modified test files.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javadoc{color}.  There were no new javadoc warning messages.

{color:green}+1 eclipse:eclipse{color}.  The patch built with 
eclipse:eclipse.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:red}-1 core tests{color}.  The patch failed these unit tests in 
hadoop-common-project/hadoop-common hadoop-hdfs-project/hadoop-hdfs 
hadoop-hdfs-project/hadoop-hdfs-nfs:

  org.apache.hadoop.security.ssl.TestReloadingX509TrustManager
  
org.apache.hadoop.hdfs.server.namenode.ha.TestPipelinesFailover
  org.apache.hadoop.hdfs.server.namenode.TestFileTruncate
  
org.apache.hadoop.hdfs.tools.offlineEditsViewer.TestOfflineEditsViewer
  org.apache.hadoop.hdfs.server.namenode.ha.TestRetryCacheWithHA

  The following test timeouts occurred in 
hadoop-common-project/hadoop-common hadoop-hdfs-project/hadoop-hdfs 
hadoop-hdfs-project/hadoop-hdfs-nfs:

org.apache.hadoop.hdfs.qjournal.client.TestQJMWithFaults

Test results: 
https://builds.apache.org/job/PreCommit-HDFS-Build/9313//testReport/
Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/9313//console

This message is automatically generated.

> Add support for variable length block
> -
>
> Key: HDFS-3689
> URL: https://issues.apache.org/jira/browse/HDFS-3689
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, hdfs-client, namenode
>Affects Versions: 3.0.0
>Reporter: Suresh Srinivas
>Assignee: Jing Zhao
> Attachments: HDFS-3689.000.patch, HDFS-3689.001.patch, 
> HDFS-3689.002.patch, HDFS-3689.003.patch, HDFS-3689.003.patch, 
> HDFS-3689.004.patch, HDFS-3689.005.patch, HDFS-3689.006.patch, 
> HDFS-3689.007.patch, HDFS-3689.008.patch, HDFS-3689.008.patch, 
> HDFS-3689.009.patch, HDFS-3689.009.patch, editsStored
>
>
> Currently HDFS supports fixed length blocks. Supporting variable length block 
> will allow new use cases and features to be built on top of HDFS. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7339) Allocating and persisting block groups in NameNode

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7339?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289983#comment-14289983
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7339:
---

> The main reason for creating a BlockGroup class and the hierarchical block ID 
> protocol is to minimize NN memory overhead. ...

This can be achieved by using consecutive (normal) block IDs for the blocks in 
a block group without dividing the ID space; see below.  (This is not easy to 
describe it.  Please let me know if you are confused.)
- For the block groups stored in namenode, only store the first block ID.  The 
other block IDs can be deduced with the storage policy.
- Use the same generation stamp for all the blocks.
- How to support lookups in BlocksMap?  There are several ways described below.
-# Change the hash function so that consecutive IDs will be mapped to the same 
hash value and implement BlockGroup.equal(..) so that it returns true with any 
block id in the group.  For example, we may only use the high 60-bit for 
computing has code.  Suppose the blocks in a block group have ID from 0x302 to 
0x30A.  We will be able to lookup the block group using any of the block IDs.  
What happen if the first ID is near the low 4-bit boundary, say 0x30D?  We may 
simply skip to 0x310 when allocating the block IDs so that it won't happen.
-# We may store the first ID (or the offset to the first ID) also in datanode 
for ec blocks.  This seems not a good solution.

If we enforce block id allocation so that the lower 4-bit of the first ID must 
be zeros, then it is very similar to the scheme propused in the design doc 
except there is no notation of block group in the block IDs.


> Allocating and persisting block groups in NameNode
> --
>
> Key: HDFS-7339
> URL: https://issues.apache.org/jira/browse/HDFS-7339
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>Reporter: Zhe Zhang
>Assignee: Zhe Zhang
> Attachments: HDFS-7339-001.patch, HDFS-7339-002.patch, 
> HDFS-7339-003.patch, HDFS-7339-004.patch, HDFS-7339-005.patch, 
> HDFS-7339-006.patch, Meta-striping.jpg, NN-stripping.jpg
>
>
> All erasure codec operations center around the concept of _block group_; they 
> are formed in initial encoding and looked up in recoveries and conversions. A 
> lightweight class {{BlockGroup}} is created to record the original and parity 
> blocks in a coding group, as well as a pointer to the codec schema (pluggable 
> codec schemas will be supported in HDFS-7337). With the striping layout, the 
> HDFS client needs to operate on all blocks in a {{BlockGroup}} concurrently. 
> Therefore we propose to extend a file’s inode to switch between _contiguous_ 
> and _striping_ modes, with the current mode recorded in a binary flag. An 
> array of BlockGroups (or BlockGroup IDs) is added, which remains empty for 
> “traditional” HDFS files with contiguous block layout.
> The NameNode creates and maintains {{BlockGroup}} instances through the new 
> {{ECManager}} component; the attached figure has an illustration of the 
> architecture. As a simple example, when a {_Striping+EC_} file is created and 
> written to, it will serve requests from the client to allocate new 
> {{BlockGroups}} and store them under the {{INodeFile}}. In the current phase, 
> {{BlockGroups}} are allocated both in initial online encoding and in the 
> conversion from replication to EC. {{ECManager}} also facilitates the lookup 
> of {{BlockGroup}} information for block recovery work.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7666) Datanode blockId layout upgrade threads should be daemon thread

2015-01-23 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7666?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14289994#comment-14289994
 ] 

Hadoop QA commented on HDFS-7666:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12694194/HDFS-7666-v1.patch
  against trunk revision 24aa462.

{color:green}+1 @author{color}.  The patch does not contain any @author 
tags.

{color:red}-1 tests included{color}.  The patch doesn't appear to include 
any new or modified tests.
Please justify why no new tests are needed for this 
patch.
Also please list what manual steps were performed to 
verify this patch.

{color:green}+1 javac{color}.  The applied patch does not increase the 
total number of javac compiler warnings.

{color:green}+1 javadoc{color}.  There were no new javadoc warning messages.

{color:green}+1 eclipse:eclipse{color}.  The patch built with 
eclipse:eclipse.

{color:green}+1 findbugs{color}.  The patch does not introduce any new 
Findbugs (version 2.0.3) warnings.

{color:green}+1 release audit{color}.  The applied patch does not increase 
the total number of release audit warnings.

{color:red}-1 core tests{color}.  The patch failed these unit tests in 
hadoop-hdfs-project/hadoop-hdfs:

  
org.apache.hadoop.hdfs.server.namenode.ha.TestPipelinesFailover
  org.apache.hadoop.hdfs.TestDecommission
  org.apache.hadoop.hdfs.qjournal.TestSecureNNWithQJM

Test results: 
https://builds.apache.org/job/PreCommit-HDFS-Build/9312//testReport/
Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/9312//console

This message is automatically generated.

> Datanode blockId layout upgrade threads should be daemon thread
> ---
>
> Key: HDFS-7666
> URL: https://issues.apache.org/jira/browse/HDFS-7666
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: datanode
>Reporter: Rakesh R
>Assignee: Rakesh R
> Attachments: HDFS-7666-v1.patch
>
>
> This jira is to mark the layout upgrade thread as daemon thread.
> {code}
>  int numLinkWorkers = datanode.getConf().getInt(
>  DFSConfigKeys.DFS_DATANODE_BLOCK_ID_LAYOUT_UPGRADE_THREADS_KEY,
>  DFSConfigKeys.DFS_DATANODE_BLOCK_ID_LAYOUT_UPGRADE_THREADS);
> ExecutorService linkWorkers = 
> Executors.newFixedThreadPool(numLinkWorkers);
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Charles Lamb (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290002#comment-14290002
 ] 

Charles Lamb commented on HDFS-7667:


[~aw],

Thanks for the review. I started out intending to just fix a few minor errors 
(missing articles, obviously wrong typos in commands, etc.). Then I couldn't 
help myself so I made some slightly larger grammatical changes and tightened up 
a few things. Please stop me before I kill any more and commit this.

Thanks!

Of course we still have not heard from Mr. Jenkins... I wonder where he is 
today.


> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Attachments: HDFS-7667.000.patch, HDFS-7667.001.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Allen Wittenauer (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Allen Wittenauer updated HDFS-7667:
---
  Resolution: Fixed
   Fix Version/s: 3.0.0
Target Version/s:   (was: 2.7.0)
  Status: Resolved  (was: Patch Available)

lol, believe I know the feeling... :D

Committed to trunk.

Thanks!

> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Fix For: 3.0.0
>
> Attachments: HDFS-7667.000.patch, HDFS-7667.001.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7058) Tests for truncate CLI

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz Wo Nicholas Sze updated HDFS-7058:
--
Description: Modify TestCLI to include general truncate tests.  (was: 
Comprehensive test coverage for truncate.)
Summary: Tests for truncate CLI  (was: Tests for truncate)

Revised summary and description.

> Tests for truncate CLI
> --
>
> Key: HDFS-7058
> URL: https://issues.apache.org/jira/browse/HDFS-7058
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>  Components: test
>Affects Versions: 3.0.0
>Reporter: Konstantin Shvachko
>
> Modify TestCLI to include general truncate tests.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Charles Lamb (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290032#comment-14290032
 ] 

Charles Lamb commented on HDFS-7667:


Thanks for the review and the commit [~aw]. If you're bored, HDFS-7644 is a 3 
char fix.


> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Fix For: 3.0.0
>
> Attachments: HDFS-7667.000.patch, HDFS-7667.001.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7667) Various typos and improvements to HDFS Federation doc

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290034#comment-14290034
 ] 

Hudson commented on HDFS-7667:
--

SUCCESS: Integrated in Hadoop-trunk-Commit #6920 (See 
[https://builds.apache.org/job/Hadoop-trunk-Commit/6920/])
HDFS-7667. Various typos and improvements to HDFS Federation doc  (Charles Lamb 
via aw) (aw: rev d411460e0d66b9b9d58924df295a957ba84b17d7)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* hadoop-hdfs-project/hadoop-hdfs/src/site/apt/Federation.apt.vm


> Various typos and improvements to HDFS Federation doc
> -
>
> Key: HDFS-7667
> URL: https://issues.apache.org/jira/browse/HDFS-7667
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.6.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Minor
> Fix For: 3.0.0
>
> Attachments: HDFS-7667.000.patch, HDFS-7667.001.patch
>
>
> Fix several incorrect commands, typos, grammatical errors, etc. in the HDFS 
> Federation doc.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7644) minor typo in HttpFS doc

2015-01-23 Thread Allen Wittenauer (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7644?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Allen Wittenauer updated HDFS-7644:
---
Summary: minor typo in HttpFS doc  (was: minor typo in HffpFS doc)

> minor typo in HttpFS doc
> 
>
> Key: HDFS-7644
> URL: https://issues.apache.org/jira/browse/HDFS-7644
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.7.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Trivial
> Attachments: HDFS-7644.000.patch
>
>
> In hadoop-httpfs/src/site/apt/index.apt.vm, s/seening/seen/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7644) minor typo in HttpFS doc

2015-01-23 Thread Allen Wittenauer (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7644?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Allen Wittenauer updated HDFS-7644:
---
   Resolution: Fixed
Fix Version/s: 2.7.0
   Status: Resolved  (was: Patch Available)

+1

Committed to branch-2 and trunk.

Thanks!

> minor typo in HttpFS doc
> 
>
> Key: HDFS-7644
> URL: https://issues.apache.org/jira/browse/HDFS-7644
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.7.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Trivial
> Fix For: 2.7.0
>
> Attachments: HDFS-7644.000.patch
>
>
> In hadoop-httpfs/src/site/apt/index.apt.vm, s/seening/seen/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7644) minor typo in HttpFS doc

2015-01-23 Thread Charles Lamb (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7644?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290048#comment-14290048
 ] 

Charles Lamb commented on HDFS-7644:


Gee, here I am fixing all these typos and I can't even get the Jira title 
correct.

Thanks for the review and the commit [~aw].


> minor typo in HttpFS doc
> 
>
> Key: HDFS-7644
> URL: https://issues.apache.org/jira/browse/HDFS-7644
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.7.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Trivial
> Fix For: 2.7.0
>
> Attachments: HDFS-7644.000.patch
>
>
> In hadoop-httpfs/src/site/apt/index.apt.vm, s/seening/seen/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7644) minor typo in HttpFS doc

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7644?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290054#comment-14290054
 ] 

Hudson commented on HDFS-7644:
--

FAILURE: Integrated in Hadoop-trunk-Commit #6921 (See 
[https://builds.apache.org/job/Hadoop-trunk-Commit/6921/])
HDFS-7644. minor typo in HttpFS doc (Charles Lamb via aw) (aw: rev 
5c93ca2f3cfd9ebcb98be89c3a238a36c03f4422)
* hadoop-hdfs-project/hadoop-hdfs-httpfs/src/site/apt/index.apt.vm
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt


> minor typo in HttpFS doc
> 
>
> Key: HDFS-7644
> URL: https://issues.apache.org/jira/browse/HDFS-7644
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.7.0
>Reporter: Charles Lamb
>Assignee: Charles Lamb
>Priority: Trivial
> Fix For: 2.7.0
>
> Attachments: HDFS-7644.000.patch
>
>
> In hadoop-httpfs/src/site/apt/index.apt.vm, s/seening/seen/



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7611) deleteSnapshot and delete of a file can leave orphaned blocks in the blocksMap on NameNode restart.

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7611?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290062#comment-14290062
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7611:
---

Thanks for digging deep into it.  We should fix the snapshot bug.

Is there a way to change TestFileTruncate for working around the bug?  It is a 
bad advertisement for the new truncate feature if TestFileTruncate keeps 
failing.

> deleteSnapshot and delete of a file can leave orphaned blocks in the 
> blocksMap on NameNode restart.
> ---
>
> Key: HDFS-7611
> URL: https://issues.apache.org/jira/browse/HDFS-7611
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: namenode
>Affects Versions: 2.6.0
>Reporter: Konstantin Shvachko
>Assignee: Byron Wong
>Priority: Critical
> Attachments: blocksNotDeletedTest.patch, testTruncateEditLogLoad.log
>
>
> If quotas are enabled a combination of operations *deleteSnapshot* and 
> *delete* of a file can leave  orphaned  blocks in the blocksMap on NameNode 
> restart. They are counted as missing on the NameNode, and can prevent 
> NameNode from coming out of safeMode and could cause memory leak during 
> startup.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3107) HDFS truncate

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290072#comment-14290072
 ] 

Tsz Wo Nicholas Sze commented on HDFS-3107:
---

There is a list of unresolved JIRAs.  Let's discuss it.
- HDFS-7341 Add initial snapshot support based on pipeline recovery
Is it still relevant?
- HDFS-7058 Tests for truncate CLI
Let's finish it before merging since CLI is user facing.  Is anyone working on 
it?
- HDFS-7655/HDFS-7656 Expose truncate API for Web HDFS/httpfs
It seems that we should not wait for them before merging.  Agree?
- HDFS-7659 We should check the new length of truncate can't be a negative value
Look like that this is going to be committed soon.
- HDFS-7665 Add definition of truncate preconditions/postconditions to 
filesystem specification
This is simple a documentation change.  Let's finish it before merging?

As a summary, how about finishing HDFS-7058, HDFS-7659 and HDFS-7665 before 
merging it to branch-2?


> HDFS truncate
> -
>
> Key: HDFS-3107
> URL: https://issues.apache.org/jira/browse/HDFS-3107
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, namenode
>Reporter: Lei Chang
>Assignee: Plamen Jeliazkov
> Fix For: 3.0.0
>
> Attachments: HDFS-3107-13.patch, HDFS-3107-14.patch, 
> HDFS-3107-15.patch, HDFS-3107-HDFS-7056-combined.patch, HDFS-3107.008.patch, 
> HDFS-3107.15_branch2.patch, HDFS-3107.patch, HDFS-3107.patch, 
> HDFS-3107.patch, HDFS-3107.patch, HDFS-3107.patch, HDFS-3107.patch, 
> HDFS-3107.patch, HDFS-3107.patch, HDFS-3107.patch, HDFS-3107.patch, 
> HDFS-3107.patch, HDFS_truncate.pdf, HDFS_truncate.pdf, HDFS_truncate.pdf, 
> HDFS_truncate_semantics_Mar15.pdf, HDFS_truncate_semantics_Mar21.pdf, 
> editsStored, editsStored.xml
>
>   Original Estimate: 1,344h
>  Remaining Estimate: 1,344h
>
> Systems with transaction support often need to undo changes made to the 
> underlying storage when a transaction is aborted. Currently HDFS does not 
> support truncate (a standard Posix operation) which is a reverse operation of 
> append, which makes upper layer applications use ugly workarounds (such as 
> keeping track of the discarded byte range per file in a separate metadata 
> store, and periodically running a vacuum process to rewrite compacted files) 
> to overcome this limitation of HDFS.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Assigned] (HDFS-7058) Tests for truncate CLI

2015-01-23 Thread Dasha Boudnik (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7058?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dasha Boudnik reassigned HDFS-7058:
---

Assignee: Dasha Boudnik

> Tests for truncate CLI
> --
>
> Key: HDFS-7058
> URL: https://issues.apache.org/jira/browse/HDFS-7058
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>  Components: test
>Affects Versions: 3.0.0
>Reporter: Konstantin Shvachko
>Assignee: Dasha Boudnik
>
> Modify TestCLI to include general truncate tests.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-3750) API docs don't include HDFS

2015-01-23 Thread Allen Wittenauer (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-3750?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Allen Wittenauer updated HDFS-3750:
---
   Resolution: Fixed
Fix Version/s: 3.0.0
   Status: Resolved  (was: Patch Available)

+1

Committed to trunk.

Thanks!

> API docs don't include HDFS
> ---
>
> Key: HDFS-3750
> URL: https://issues.apache.org/jira/browse/HDFS-3750
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.0.0-alpha
>Reporter: Eli Collins
>Assignee: Jolly Chen
>Priority: Critical
> Fix For: 3.0.0
>
> Attachments: HDFS-3750.patch
>
>
> [The javadocs|http://hadoop.apache.org/common/docs/current/api/index.html] 
> don't include HDFS.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7058) Tests for truncate CLI

2015-01-23 Thread Dasha Boudnik (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7058?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290085#comment-14290085
 ] 

Dasha Boudnik commented on HDFS-7058:
-

I can look into this. Thanks!

> Tests for truncate CLI
> --
>
> Key: HDFS-7058
> URL: https://issues.apache.org/jira/browse/HDFS-7058
> Project: Hadoop HDFS
>  Issue Type: Sub-task
>  Components: test
>Affects Versions: 3.0.0
>Reporter: Konstantin Shvachko
>Assignee: Dasha Boudnik
>
> Modify TestCLI to include general truncate tests.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-4919) Improve documentation of dfs.permissions.enabled flag.

2015-01-23 Thread Allen Wittenauer (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-4919?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290090#comment-14290090
 ] 

Allen Wittenauer commented on HDFS-4919:


This no longer applies. :(

> Improve documentation of dfs.permissions.enabled flag.
> --
>
> Key: HDFS-4919
> URL: https://issues.apache.org/jira/browse/HDFS-4919
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: documentation
>Affects Versions: 3.0.0, 2.1.0-beta
>Reporter: Chris Nauroth
> Attachments: HDFS-4919.patch
>
>
> The description of dfs.permissions.enabled in hdfs-default.xml does not state 
> that permissions are always checked on certain calls regardless of this 
> configuration.  The HDFS permissions guide still mentions the deprecated 
> dfs.permissions property instead of the currently supported 
> dfs.permissions.enabled.
> http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html#Configuration_Parameters



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-6261) Add document for enabling node group layer in HDFS

2015-01-23 Thread Allen Wittenauer (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-6261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290092#comment-14290092
 ] 

Allen Wittenauer commented on HDFS-6261:


I'd prefer to see this get merged into the RackAwareness documentation rather 
than building a completely new doc.

> Add document for enabling node group layer in HDFS
> --
>
> Key: HDFS-6261
> URL: https://issues.apache.org/jira/browse/HDFS-6261
> Project: Hadoop HDFS
>  Issue Type: Task
>  Components: documentation
>Reporter: Wenwu Peng
>Assignee: Binglin Chang
>  Labels: documentation
> Attachments: 2-layer-topology.png, 3-layer-topology.png, 
> 3layer-topology.png, 4layer-topology.png, HDFS-6261.v1.patch, 
> HDFS-6261.v1.patch, HDFS-6261.v2.patch, HDFS-6261.v3.patch
>
>
> Most of patches from Umbrella JIRA HADOOP-8468  have committed, However there 
> is no site to introduce NodeGroup-aware(HADOOP Virtualization Extensisons) 
> and how to do configuration. so we need to doc it.
> 1.  Doc NodeGroup-aware relate in http://hadoop.apache.org/docs/current 
> 2.  Doc NodeGroup-aware properties in core-default.xml.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-3728) Update Httpfs documentation

2015-01-23 Thread Allen Wittenauer (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-3728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Allen Wittenauer updated HDFS-3728:
---
Status: Patch Available  (was: Open)

> Update Httpfs documentation
> ---
>
> Key: HDFS-3728
> URL: https://issues.apache.org/jira/browse/HDFS-3728
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.0.2-alpha, 1.0.3, 3.0.0
>Reporter: Santhosh Srinivasan
>Priority: Minor
>  Labels: newbie
> Attachments: HDFS-3728.patch
>
>
> Link: 
> http://hadoop.apache.org/common/docs/current/hadoop-hdfs-httpfs/index.html
> Section: How HttpFS and Hadoop HDFS Proxy differ?
> # Change seening to seen
> # "HttpFS uses a clean HTTP REST API making its use with HTTP tools more 
> intuitive." is very subjective. Can it be rephrased or removed?
> Link: 
> http://hadoop.apache.org/common/docs/current/hadoop-hdfs-httpfs/ServerSetup.html
> Section: Configure HttpFS
> # Change "...add to the httpfs-site.xml file the httpfs.hadoop.config.dir 
> property set to..." to "add to the httpfs-site.xml file the 
> httpfs.hadoop.config.dir property and set the value to ..."
> Section: Configure Hadoop
> # Change defined to define
> Section: Restart Hadoop
> # Typo - to (not ot)
> Section: Start/Stop HttpFS
> # lists (plural)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-3728) Update Httpfs documentation

2015-01-23 Thread Allen Wittenauer (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-3728?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Allen Wittenauer updated HDFS-3728:
---
Status: Open  (was: Patch Available)

> Update Httpfs documentation
> ---
>
> Key: HDFS-3728
> URL: https://issues.apache.org/jira/browse/HDFS-3728
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.0.2-alpha, 1.0.3, 3.0.0
>Reporter: Santhosh Srinivasan
>Priority: Minor
>  Labels: newbie
> Attachments: HDFS-3728.patch
>
>
> Link: 
> http://hadoop.apache.org/common/docs/current/hadoop-hdfs-httpfs/index.html
> Section: How HttpFS and Hadoop HDFS Proxy differ?
> # Change seening to seen
> # "HttpFS uses a clean HTTP REST API making its use with HTTP tools more 
> intuitive." is very subjective. Can it be rephrased or removed?
> Link: 
> http://hadoop.apache.org/common/docs/current/hadoop-hdfs-httpfs/ServerSetup.html
> Section: Configure HttpFS
> # Change "...add to the httpfs-site.xml file the httpfs.hadoop.config.dir 
> property set to..." to "add to the httpfs-site.xml file the 
> httpfs.hadoop.config.dir property and set the value to ..."
> Section: Configure Hadoop
> # Change defined to define
> Section: Restart Hadoop
> # Typo - to (not ot)
> Section: Start/Stop HttpFS
> # lists (plural)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3107) HDFS truncate

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3107?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290095#comment-14290095
 ] 

Tsz Wo Nicholas Sze commented on HDFS-3107:
---

BTW, have we updated user documentation for the truncate CLI change?

> HDFS truncate
> -
>
> Key: HDFS-3107
> URL: https://issues.apache.org/jira/browse/HDFS-3107
> Project: Hadoop HDFS
>  Issue Type: New Feature
>  Components: datanode, namenode
>Reporter: Lei Chang
>Assignee: Plamen Jeliazkov
> Fix For: 3.0.0
>
> Attachments: HDFS-3107-13.patch, HDFS-3107-14.patch, 
> HDFS-3107-15.patch, HDFS-3107-HDFS-7056-combined.patch, HDFS-3107.008.patch, 
> HDFS-3107.15_branch2.patch, HDFS-3107.patch, HDFS-3107.patch, 
> HDFS-3107.patch, HDFS-3107.patch, HDFS-3107.patch, HDFS-3107.patch, 
> HDFS-3107.patch, HDFS-3107.patch, HDFS-3107.patch, HDFS-3107.patch, 
> HDFS-3107.patch, HDFS_truncate.pdf, HDFS_truncate.pdf, HDFS_truncate.pdf, 
> HDFS_truncate_semantics_Mar15.pdf, HDFS_truncate_semantics_Mar21.pdf, 
> editsStored, editsStored.xml
>
>   Original Estimate: 1,344h
>  Remaining Estimate: 1,344h
>
> Systems with transaction support often need to undo changes made to the 
> underlying storage when a transaction is aborted. Currently HDFS does not 
> support truncate (a standard Posix operation) which is a reverse operation of 
> append, which makes upper layer applications use ugly workarounds (such as 
> keeping track of the discarded byte range per file in a separate metadata 
> store, and periodically running a vacuum process to rewrite compacted files) 
> to overcome this limitation of HDFS.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-4922) Improve the short-circuit document

2015-01-23 Thread Allen Wittenauer (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290101#comment-14290101
 ] 

Allen Wittenauer commented on HDFS-4922:


If someone updates this, we can get this committed :)

> Improve the short-circuit document
> --
>
> Key: HDFS-4922
> URL: https://issues.apache.org/jira/browse/HDFS-4922
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: documentation, hdfs-client
>Affects Versions: 3.0.0, 2.1.0-beta
>Reporter: Fengdong Yu
>Assignee: Fengdong Yu
>Priority: Minor
> Attachments: HDFS-4922-002.patch, HDFS-4922-003.patch, 
> HDFS-4922-004.patch, HDFS-4922-005.patch, HDFS-4922-006.patch, HDFS-4922.patch
>
>
> explain the default value and add one configure key, which doesn't show in 
> the document, but exists in the code.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-4919) Improve documentation of dfs.permissions.enabled flag.

2015-01-23 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-4919?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290108#comment-14290108
 ] 

Hadoop QA commented on HDFS-4919:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12600936/HDFS-4919.patch
  against trunk revision 6c3fec5.

{color:red}-1 patch{color}.  The patch command could not apply the patch.

Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/9316//console

This message is automatically generated.

> Improve documentation of dfs.permissions.enabled flag.
> --
>
> Key: HDFS-4919
> URL: https://issues.apache.org/jira/browse/HDFS-4919
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: documentation
>Affects Versions: 3.0.0, 2.1.0-beta
>Reporter: Chris Nauroth
> Attachments: HDFS-4919.patch
>
>
> The description of dfs.permissions.enabled in hdfs-default.xml does not state 
> that permissions are always checked on certain calls regardless of this 
> configuration.  The HDFS permissions guide still mentions the deprecated 
> dfs.permissions property instead of the currently supported 
> dfs.permissions.enabled.
> http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html#Configuration_Parameters



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3728) Update Httpfs documentation

2015-01-23 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290113#comment-14290113
 ] 

Hadoop QA commented on HDFS-3728:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12550247/HDFS-3728.patch
  against trunk revision 6c3fec5.

{color:red}-1 patch{color}.  The patch command could not apply the patch.

Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/9318//console

This message is automatically generated.

> Update Httpfs documentation
> ---
>
> Key: HDFS-3728
> URL: https://issues.apache.org/jira/browse/HDFS-3728
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 1.0.3, 3.0.0, 2.0.2-alpha
>Reporter: Santhosh Srinivasan
>Priority: Minor
>  Labels: newbie
> Attachments: HDFS-3728.patch
>
>
> Link: 
> http://hadoop.apache.org/common/docs/current/hadoop-hdfs-httpfs/index.html
> Section: How HttpFS and Hadoop HDFS Proxy differ?
> # Change seening to seen
> # "HttpFS uses a clean HTTP REST API making its use with HTTP tools more 
> intuitive." is very subjective. Can it be rephrased or removed?
> Link: 
> http://hadoop.apache.org/common/docs/current/hadoop-hdfs-httpfs/ServerSetup.html
> Section: Configure HttpFS
> # Change "...add to the httpfs-site.xml file the httpfs.hadoop.config.dir 
> property set to..." to "add to the httpfs-site.xml file the 
> httpfs.hadoop.config.dir property and set the value to ..."
> Section: Configure Hadoop
> # Change defined to define
> Section: Restart Hadoop
> # Typo - to (not ot)
> Section: Start/Stop HttpFS
> # lists (plural)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-4922) Improve the short-circuit document

2015-01-23 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-4922?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290112#comment-14290112
 ] 

Hadoop QA commented on HDFS-4922:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12622806/HDFS-4922-006.patch
  against trunk revision 6c3fec5.

{color:red}-1 patch{color}.  The patch command could not apply the patch.

Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/9317//console

This message is automatically generated.

> Improve the short-circuit document
> --
>
> Key: HDFS-4922
> URL: https://issues.apache.org/jira/browse/HDFS-4922
> Project: Hadoop HDFS
>  Issue Type: Improvement
>  Components: documentation, hdfs-client
>Affects Versions: 3.0.0, 2.1.0-beta
>Reporter: Fengdong Yu
>Assignee: Fengdong Yu
>Priority: Minor
> Attachments: HDFS-4922-002.patch, HDFS-4922-003.patch, 
> HDFS-4922-004.patch, HDFS-4922-005.patch, HDFS-4922-006.patch, HDFS-4922.patch
>
>
> explain the default value and add one configure key, which doesn't show in 
> the document, but exists in the code.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-6261) Add document for enabling node group layer in HDFS

2015-01-23 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-6261?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290111#comment-14290111
 ] 

Hadoop QA commented on HDFS-6261:
-

{color:red}-1 overall{color}.  Here are the results of testing the latest 
attachment 
  http://issues.apache.org/jira/secure/attachment/12660927/HDFS-6261.v3.patch
  against trunk revision 6c3fec5.

{color:red}-1 patch{color}.  The patch command could not apply the patch.

Console output: https://builds.apache.org/job/PreCommit-HDFS-Build/9319//console

This message is automatically generated.

> Add document for enabling node group layer in HDFS
> --
>
> Key: HDFS-6261
> URL: https://issues.apache.org/jira/browse/HDFS-6261
> Project: Hadoop HDFS
>  Issue Type: Task
>  Components: documentation
>Reporter: Wenwu Peng
>Assignee: Binglin Chang
>  Labels: documentation
> Attachments: 2-layer-topology.png, 3-layer-topology.png, 
> 3layer-topology.png, 4layer-topology.png, HDFS-6261.v1.patch, 
> HDFS-6261.v1.patch, HDFS-6261.v2.patch, HDFS-6261.v3.patch
>
>
> Most of patches from Umbrella JIRA HADOOP-8468  have committed, However there 
> is no site to introduce NodeGroup-aware(HADOOP Virtualization Extensisons) 
> and how to do configuration. so we need to doc it.
> 1.  Doc NodeGroup-aware relate in http://hadoop.apache.org/docs/current 
> 2.  Doc NodeGroup-aware properties in core-default.xml.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7320) The appearance of hadoop-hdfs-httpfs site docs is inconsistent

2015-01-23 Thread Allen Wittenauer (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7320?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Allen Wittenauer updated HDFS-7320:
---
   Resolution: Fixed
Fix Version/s: 3.0.0
   Status: Resolved  (was: Patch Available)

+1 committed to trunk

Thanks!

> The appearance of hadoop-hdfs-httpfs site docs is inconsistent 
> ---
>
> Key: HDFS-7320
> URL: https://issues.apache.org/jira/browse/HDFS-7320
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Reporter: Masatake Iwasaki
>Assignee: Masatake Iwasaki
>Priority: Minor
> Fix For: 3.0.0
>
> Attachments: HDFS-7320.1.patch
>
>
> The docs of hadoop-hdfs-httpfs use different maven-base.css and 
> maven-theme.css from other modules.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-3750) API docs don't include HDFS

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-3750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290121#comment-14290121
 ] 

Hudson commented on HDFS-3750:
--

SUCCESS: Integrated in Hadoop-trunk-Commit #6922 (See 
[https://builds.apache.org/job/Hadoop-trunk-Commit/6922/])
HDFS-3750. API docs don't include HDFS (Jolly Chen via aw) (aw: rev 
6c3fec5ec25caabbd8c5ac795a5bc5229b5365de)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* pom.xml


> API docs don't include HDFS
> ---
>
> Key: HDFS-3750
> URL: https://issues.apache.org/jira/browse/HDFS-3750
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Affects Versions: 2.0.0-alpha
>Reporter: Eli Collins
>Assignee: Jolly Chen
>Priority: Critical
> Fix For: 3.0.0
>
> Attachments: HDFS-3750.patch
>
>
> [The javadocs|http://hadoop.apache.org/common/docs/current/api/index.html] 
> don't include HDFS.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7411) Refactor and improve decommissioning logic into DecommissionManager

2015-01-23 Thread Andrew Wang (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7411?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Wang updated HDFS-7411:
--
Attachment: hdfs-7411.008.patch

> Refactor and improve decommissioning logic into DecommissionManager
> ---
>
> Key: HDFS-7411
> URL: https://issues.apache.org/jira/browse/HDFS-7411
> Project: Hadoop HDFS
>  Issue Type: Improvement
>Affects Versions: 2.5.1
>Reporter: Andrew Wang
>Assignee: Andrew Wang
> Attachments: hdfs-7411.001.patch, hdfs-7411.002.patch, 
> hdfs-7411.003.patch, hdfs-7411.004.patch, hdfs-7411.005.patch, 
> hdfs-7411.006.patch, hdfs-7411.007.patch, hdfs-7411.008.patch
>
>
> Would be nice to split out decommission logic from DatanodeManager to 
> DecommissionManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7411) Refactor and improve decommissioning logic into DecommissionManager

2015-01-23 Thread Andrew Wang (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7411?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Wang updated HDFS-7411:
--
Attachment: (was: hdfs-7411.008.patch)

> Refactor and improve decommissioning logic into DecommissionManager
> ---
>
> Key: HDFS-7411
> URL: https://issues.apache.org/jira/browse/HDFS-7411
> Project: Hadoop HDFS
>  Issue Type: Improvement
>Affects Versions: 2.5.1
>Reporter: Andrew Wang
>Assignee: Andrew Wang
> Attachments: hdfs-7411.001.patch, hdfs-7411.002.patch, 
> hdfs-7411.003.patch, hdfs-7411.004.patch, hdfs-7411.005.patch, 
> hdfs-7411.006.patch, hdfs-7411.007.patch
>
>
> Would be nice to split out decommission logic from DatanodeManager to 
> DecommissionManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7320) The appearance of hadoop-hdfs-httpfs site docs is inconsistent

2015-01-23 Thread Hudson (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7320?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290135#comment-14290135
 ] 

Hudson commented on HDFS-7320:
--

FAILURE: Integrated in Hadoop-trunk-Commit #6923 (See 
[https://builds.apache.org/job/Hadoop-trunk-Commit/6923/])
HDFS-7320. The appearance of hadoop-hdfs-httpfs site docs is inconsistent 
(Masatake Iwasaki via aw) (aw: rev 8f26d5a8a13539e8292c1cf7f141eff7e58984a5)
* hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt
* hadoop-hdfs-project/hadoop-hdfs-httpfs/pom.xml


> The appearance of hadoop-hdfs-httpfs site docs is inconsistent 
> ---
>
> Key: HDFS-7320
> URL: https://issues.apache.org/jira/browse/HDFS-7320
> Project: Hadoop HDFS
>  Issue Type: Bug
>  Components: documentation
>Reporter: Masatake Iwasaki
>Assignee: Masatake Iwasaki
>Priority: Minor
> Fix For: 3.0.0
>
> Attachments: HDFS-7320.1.patch
>
>
> The docs of hadoop-hdfs-httpfs use different maven-base.css and 
> maven-theme.css from other modules.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Updated] (HDFS-7411) Refactor and improve decommissioning logic into DecommissionManager

2015-01-23 Thread Andrew Wang (JIRA)

 [ 
https://issues.apache.org/jira/browse/HDFS-7411?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Wang updated HDFS-7411:
--
Attachment: hdfs-7411.008.patch

> Refactor and improve decommissioning logic into DecommissionManager
> ---
>
> Key: HDFS-7411
> URL: https://issues.apache.org/jira/browse/HDFS-7411
> Project: Hadoop HDFS
>  Issue Type: Improvement
>Affects Versions: 2.5.1
>Reporter: Andrew Wang
>Assignee: Andrew Wang
> Attachments: hdfs-7411.001.patch, hdfs-7411.002.patch, 
> hdfs-7411.003.patch, hdfs-7411.004.patch, hdfs-7411.005.patch, 
> hdfs-7411.006.patch, hdfs-7411.007.patch, hdfs-7411.008.patch
>
>
> Would be nice to split out decommission logic from DatanodeManager to 
> DecommissionManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7411) Refactor and improve decommissioning logic into DecommissionManager

2015-01-23 Thread Andrew Wang (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290146#comment-14290146
 ] 

Andrew Wang commented on HDFS-7411:
---

Thanks again for reviewing Colin, fixed with the following notes:

bq. Grammar: "is already decomissioning"

"decommissioning in progress" is a state for a node, so I think this is 
accurate, although ugly, language.

bq. What's the rationale for initializing the DecomissionManager configuration 
in activate rather than in the constructor? It seems like if we initialized the 
conf stuff in the constructor we could make more of it final?

I wasn't sure about this either, but it seems like the NN really likes for 
everything to be init'd with the Configuration passed when starting common 
services.

For this particular function, I went ahead and made the config variables final 
since they're just scoped to that function. Since we make a new Monitor each 
time, those members are final there too.

> Refactor and improve decommissioning logic into DecommissionManager
> ---
>
> Key: HDFS-7411
> URL: https://issues.apache.org/jira/browse/HDFS-7411
> Project: Hadoop HDFS
>  Issue Type: Improvement
>Affects Versions: 2.5.1
>Reporter: Andrew Wang
>Assignee: Andrew Wang
> Attachments: hdfs-7411.001.patch, hdfs-7411.002.patch, 
> hdfs-7411.003.patch, hdfs-7411.004.patch, hdfs-7411.005.patch, 
> hdfs-7411.006.patch, hdfs-7411.007.patch, hdfs-7411.008.patch
>
>
> Would be nice to split out decommission logic from DatanodeManager to 
> DecommissionManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7411) Refactor and improve decommissioning logic into DecommissionManager

2015-01-23 Thread Tsz Wo Nicholas Sze (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290152#comment-14290152
 ] 

Tsz Wo Nicholas Sze commented on HDFS-7411:
---

Could we separate code refactoring and improvement into two JIRAs?  The 
refactoring probably with a big patch is easy to review.  The improvement patch 
will be much smaller.

> Refactor and improve decommissioning logic into DecommissionManager
> ---
>
> Key: HDFS-7411
> URL: https://issues.apache.org/jira/browse/HDFS-7411
> Project: Hadoop HDFS
>  Issue Type: Improvement
>Affects Versions: 2.5.1
>Reporter: Andrew Wang
>Assignee: Andrew Wang
> Attachments: hdfs-7411.001.patch, hdfs-7411.002.patch, 
> hdfs-7411.003.patch, hdfs-7411.004.patch, hdfs-7411.005.patch, 
> hdfs-7411.006.patch, hdfs-7411.007.patch, hdfs-7411.008.patch
>
>
> Would be nice to split out decommission logic from DatanodeManager to 
> DecommissionManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (HDFS-7411) Refactor and improve decommissioning logic into DecommissionManager

2015-01-23 Thread Andrew Wang (JIRA)

[ 
https://issues.apache.org/jira/browse/HDFS-7411?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14290173#comment-14290173
 ] 

Andrew Wang commented on HDFS-7411:
---

If you look at version 2 of the patch, you can see the initial refactor, which 
consisted of moving some methods from BlockManager to DecomManager. I didn't 
bother splitting this though since it ended up not being very interesting. 
DecomManager is also basically all new code, so the old code would be moved and 
then subsequently deleted if we split it.

I think the easiest way of reviewing it is just to read through DecomManager, 
which really isn't that big of a class. It's quite well commented and has lots 
of logging, which is part of why this change as a whole appears large.

> Refactor and improve decommissioning logic into DecommissionManager
> ---
>
> Key: HDFS-7411
> URL: https://issues.apache.org/jira/browse/HDFS-7411
> Project: Hadoop HDFS
>  Issue Type: Improvement
>Affects Versions: 2.5.1
>Reporter: Andrew Wang
>Assignee: Andrew Wang
> Attachments: hdfs-7411.001.patch, hdfs-7411.002.patch, 
> hdfs-7411.003.patch, hdfs-7411.004.patch, hdfs-7411.005.patch, 
> hdfs-7411.006.patch, hdfs-7411.007.patch, hdfs-7411.008.patch
>
>
> Would be nice to split out decommission logic from DatanodeManager to 
> DecommissionManager.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


  1   2   >