[jira] [Commented] (HADOOP-12885) An operation of atomic fold rename crashed in Wasb FileSystem

2016-03-06 Thread madhumita chakraborty (JIRA)

[ 
https://issues.apache.org/jira/browse/HADOOP-12885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15182571#comment-15182571
 ] 

madhumita chakraborty commented on HADOOP-12885:


[~liushaohui] Some more doubts
How often you are facing this? Are you seeing this frequently across many 
clusters in production?

> An operation of atomic fold rename crashed in Wasb FileSystem
> -
>
> Key: HADOOP-12885
> URL: https://issues.apache.org/jira/browse/HADOOP-12885
> Project: Hadoop Common
>  Issue Type: Bug
>Reporter: Liu Shaohui
>Assignee: madhumita chakraborty
>Priority: Critical
>
> An operation of atomic fold rename crashed in Wasb FileSystem
> {code}
> org.apache.hadoop.fs.azure.AzureException: Source blob 
> hbase/azurtst-xiaomi/data/default/YCSBTest/5f882f5492c90b4c03a26561a2ee0a96/.regioninfo
>  does not exist.
> at 
> org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.rename(AzureNativeFileSystemStore.java:2405)
> at 
> org.apache.hadoop.fs.azure.NativeAzureFileSystem$FolderRenamePending.execute(NativeAzureFileSystem.java:413)
> at 
> org.apache.hadoop.fs.azure.NativeAzureFileSystem.rename(NativeAzureFileSystem.java:1997)
> {code}
> The problem is that there are duplicated file is the RenamePending.json. 
> {code}
> "5f882f5492c90b4c03a26561a2ee0a96",   
>   
> "5f882f5492c90b4c03a26561a2ee0a96\/.regioninfo",  
>   
>   
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/8a2c08db432d447d9e0ed5266940b25e",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/9425c621073e41df9430e88f0ef61c01",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/f9fc55a94fa34efbb2d26be77c76187c",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/.regioninfo",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/.tmp", 
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C",
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/8a2c08db432d447d9e0ed5266940b25e",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/9425c621073e41df9430e88f0ef61c01",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/f9fc55a94fa34efbb2d26be77c76187c",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/recovered.edits", 
> {code}
> Maybe there is a bug in the Listing of all the files in the folder in Wasb. 
> Any suggestions?



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


[jira] [Commented] (HADOOP-12885) An operation of atomic fold rename crashed in Wasb FileSystem

2016-03-06 Thread madhumita chakraborty (JIRA)

[ 
https://issues.apache.org/jira/browse/HADOOP-12885?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15182536#comment-15182536
 ] 

madhumita chakraborty commented on HADOOP-12885:


[~liushaohui] Could you please share the logs, a cluster where you are able to 
repro this issue and the storage account details of the cluster? And are you 
getting this error when the first rename happened, or after some crash 
happened, and we are trying to redo the pending renames?

> An operation of atomic fold rename crashed in Wasb FileSystem
> -
>
> Key: HADOOP-12885
> URL: https://issues.apache.org/jira/browse/HADOOP-12885
> Project: Hadoop Common
>  Issue Type: Bug
>Reporter: Liu Shaohui
>Assignee: madhumita chakraborty
>Priority: Critical
>
> An operation of atomic fold rename crashed in Wasb FileSystem
> {code}
> org.apache.hadoop.fs.azure.AzureException: Source blob 
> hbase/azurtst-xiaomi/data/default/YCSBTest/5f882f5492c90b4c03a26561a2ee0a96/.regioninfo
>  does not exist.
> at 
> org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.rename(AzureNativeFileSystemStore.java:2405)
> at 
> org.apache.hadoop.fs.azure.NativeAzureFileSystem$FolderRenamePending.execute(NativeAzureFileSystem.java:413)
> at 
> org.apache.hadoop.fs.azure.NativeAzureFileSystem.rename(NativeAzureFileSystem.java:1997)
> {code}
> The problem is that there are duplicated file is the RenamePending.json. 
> {code}
> "5f882f5492c90b4c03a26561a2ee0a96",   
>   
> "5f882f5492c90b4c03a26561a2ee0a96\/.regioninfo",  
>   
>   
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/8a2c08db432d447d9e0ed5266940b25e",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/9425c621073e41df9430e88f0ef61c01",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/f9fc55a94fa34efbb2d26be77c76187c",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/.regioninfo",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/.tmp", 
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C",
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/8a2c08db432d447d9e0ed5266940b25e",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/9425c621073e41df9430e88f0ef61c01",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/C\/f9fc55a94fa34efbb2d26be77c76187c",  
>
> "5f882f5492c90b4c03a26561a2ee0a96\/recovered.edits", 
> {code}
> Maybe there is a bug in the Listing of all the files in the folder in Wasb. 
> Any suggestions?



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


[jira] [Commented] (HADOOP-12717) NPE when trying to rename a directory in Windows Azure Storage FileSystem

2016-03-01 Thread madhumita chakraborty (JIRA)

[ 
https://issues.apache.org/jira/browse/HADOOP-12717?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15175182#comment-15175182
 ] 

madhumita chakraborty commented on HADOOP-12717:


Looks good to me. Would it be possible to add one unit test for this scenario?

> NPE when trying to rename a directory in Windows Azure Storage FileSystem
> -
>
> Key: HADOOP-12717
> URL: https://issues.apache.org/jira/browse/HADOOP-12717
> Project: Hadoop Common
>  Issue Type: Bug
>Affects Versions: 2.7.0
>Reporter: Robert Yokota
>Assignee: Robert Yokota
> Attachments: HADOOP-12717.001.patch, diff.txt
>
>
> Encountered an NPE when trying to use the HBase utility ExportSnapshot with 
> Azure as the target.  
> It turns out verifyAndConvertToStandardFormat is returning null when 
> determining the hbaseRoot, and this is being added to the atomicRenameDirs 
> set.
> java.lang.NullPointerException
> at 
> org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.isKeyForDirectorySet(AzureNativeFileSystemStore.java:1059)
> at 
> org.apache.hadoop.fs.azure.AzureNativeFileSystemStore.isAtomicRenameKey(AzureNativeFileSystemStore.java:1053)
> at 
> org.apache.hadoop.fs.azure.NativeAzureFileSystem.prepareAtomicFolderRename(NativeAzureFileSystem.java:2098)
> at 
> org.apache.hadoop.fs.azure.NativeAzureFileSystem.rename(NativeAzureFileSystem.java:1996)
> at 
> org.apache.hadoop.hbase.snapshot.ExportSnapshot.run(ExportSnapshot.java:944)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at 
> com.yammer.calmie.snapshot.AbstractSnapshotUtil.exportSnapshot(AbstractSnapshotUtil.java:210)
> at 
> com.yammer.calmie.snapshot.AbstractSnapshotUtil.run(AbstractSnapshotUtil.java:79)
> at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
> at 
> com.yammer.calmie.snapshot.SnapshotAzureBlobUtil.main(SnapshotAzureBlobUtil.java:85)



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


[jira] [Updated] (HADOOP-12853) Change WASB documentation regarding page blob support

2016-02-29 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12853:
---
Attachment: HADOOP-12853.001.patch

> Change WASB documentation regarding page blob support
> -
>
> Key: HADOOP-12853
> URL: https://issues.apache.org/jira/browse/HADOOP-12853
> Project: Hadoop Common
>  Issue Type: Improvement
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Minor
> Attachments: HADOOP-12853.001.patch
>
>
> WASB page blob support documentation in Features list at the top:
> Supports both page blobs (suitable for most use cases, such as MapReduce) and 
> block blobs (suitable for continuous write use cases, such as an HBase 
> write-ahead log).
> Which is actually the opposite. Block blobs are better for typical big data 
> use cases, and page blobs were implemented to support the HBase WAL.
> It is also mentioned that
> "Page blobs can be used for other purposes beyond just HBase log files 
> though."
> This is not strong enough because page blob has been tested only in context 
> of HBase write ahead logs. They have not been broadly certified for use 
> across the HDP stack, hence is not recommended for use as a general purpose 
> file-system via Hadoop cluster



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


[jira] [Updated] (HADOOP-12853) Change WASB documentation regarding page blob support

2016-02-29 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12853:
---
Status: Patch Available  (was: Open)

> Change WASB documentation regarding page blob support
> -
>
> Key: HADOOP-12853
> URL: https://issues.apache.org/jira/browse/HADOOP-12853
> Project: Hadoop Common
>  Issue Type: Improvement
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Minor
> Attachments: HADOOP-12853.001.patch
>
>
> WASB page blob support documentation in Features list at the top:
> Supports both page blobs (suitable for most use cases, such as MapReduce) and 
> block blobs (suitable for continuous write use cases, such as an HBase 
> write-ahead log).
> Which is actually the opposite. Block blobs are better for typical big data 
> use cases, and page blobs were implemented to support the HBase WAL.
> It is also mentioned that
> "Page blobs can be used for other purposes beyond just HBase log files 
> though."
> This is not strong enough because page blob has been tested only in context 
> of HBase write ahead logs. They have not been broadly certified for use 
> across the HDP stack, hence is not recommended for use as a general purpose 
> file-system via Hadoop cluster



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


[jira] [Created] (HADOOP-12853) Change WASB documentation regarding page blob support

2016-02-29 Thread madhumita chakraborty (JIRA)
madhumita chakraborty created HADOOP-12853:
--

 Summary: Change WASB documentation regarding page blob support
 Key: HADOOP-12853
 URL: https://issues.apache.org/jira/browse/HADOOP-12853
 Project: Hadoop Common
  Issue Type: Improvement
  Components: fs/azure
Reporter: madhumita chakraborty
Assignee: madhumita chakraborty
Priority: Minor


WASB page blob support documentation in Features list at the top:

Supports both page blobs (suitable for most use cases, such as MapReduce) and 
block blobs (suitable for continuous write use cases, such as an HBase 
write-ahead log).
Which is actually the opposite. Block blobs are better for typical big data use 
cases, and page blobs were implemented to support the HBase WAL.

It is also mentioned that
"Page blobs can be used for other purposes beyond just HBase log files though."
This is not strong enough because page blob has been tested only in context of 
HBase write ahead logs. They have not been broadly certified for use across the 
HDP stack, hence is not recommended for use as a general purpose file-system 
via Hadoop cluster



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-23 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Patch Available  (was: Open)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch, 
> HADOOP-12535.003.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-23 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Open  (was: Patch Available)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch, 
> HADOOP-12535.003.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Commented] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-23 Thread madhumita chakraborty (JIRA)

[ 
https://issues.apache.org/jira/browse/HADOOP-12535?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15159609#comment-15159609
 ] 

madhumita chakraborty commented on HADOOP-12535:


Took care if the comments and uploaded new patch.
[~cnauroth] Some doubts
1.  How do atomic rename and delete settings 
(fs.contract.supports-atomic-directory-delete and 
fs.contract.supports-atomic-directory-rename) get used? I dont see any 
reference to SUPPORTS_ATOMIC_RENAME and SUPPORTS_ATOMIC_DIRECTORY_DELETE  
defined in ContractOptions. If a filesystem supports atomic rename, do they 
need to write new contract test?
2.  I added contract test for append. testRenameFileBeingAppended if 
failing. I have skipped this test for now. This test case appends a file and 
then renames it.

FSDataOutputStream outputStream = getFileSystem().append(target);
  outputStream.write(dataset);
  Path renamed = new Path(testPath,”renamed”);
  Rename(target, renamed);
 outputStream.close();

So here we see that after renaming it closes the original file stream. Was this 
test written in this way to maintain parity with unix file system? But WASB 
does not support this semantic. If the file is renamed before closing the 
original stream then we get 2 types of error.
a.  In append we take SelfRenewingLease on the blob. In Close we see if the 
lease has expired it will try to renew the lease and that will throw exception 
as the blob has already been deleted as part of rename.
b.  In close we commit the blocks of blockblob. So if we rename the file 
before closing the stream, actually the content does not get committed. And 
empty renamed file is created.
cc [~dchickabasapa]

3.Root folder access is not fully supported in WASB. So removed 
TestAzureNativeContractRootDir.

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch, 
> HADOOP-12535.003.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-23 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Attachment: HADOOP-12535.003.patch

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch, 
> HADOOP-12535.003.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-23 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Patch Available  (was: Open)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch, 
> HADOOP-12535.003.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-23 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Open  (was: Patch Available)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Commented] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-18 Thread madhumita chakraborty (JIRA)

[ 
https://issues.apache.org/jira/browse/HADOOP-12535?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15152308#comment-15152308
 ] 

madhumita chakraborty commented on HADOOP-12535:


As we should not commit the WASB account credentials, so I disabled the tests 
according to 
https://hadoop.apache.org/docs/r2.7.2/hadoop-project-dist/hadoop-common/filesystem/testing.html


> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-18 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Patch Available  (was: Open)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-18 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Attachment: (was: HADOOP-12535.002.patch)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-18 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Attachment: HADOOP-12535.002.patch

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-18 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Open  (was: Patch Available)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-18 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Patch Available  (was: Open)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-02-18 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Open  (was: Patch Available)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch, HADOOP-12535.002.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Commented] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-09 Thread madhumita chakraborty (JIRA)

[ 
https://issues.apache.org/jira/browse/HADOOP-12780?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15139632#comment-15139632
 ] 

madhumita chakraborty commented on HADOOP-12780:


[~cnauroth] Could you please take a look at the patch?

> During atomic rename handle crash when one directory has been renamed but not 
> file under it.
> 
>
> Key: HADOOP-12780
> URL: https://issues.apache.org/jira/browse/HADOOP-12780
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Affects Versions: 2.8.0
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12780.001.patch
>
>
> During atomic folder rename process preperaion we record the proposed change 
> to a metadata file (-renamePending.json).
> Say we are renaming parent/folderToRename to parent/renamedFolder.
> folderToRename has an inner folder innerFolder and innerFolder has a file 
> innerFile
> Content of the –renamePending.json file will be
> {   OldFolderName: parent/ folderToRename",
>  NewFolderName: "parent/renamedFolder", 
>  FileList: [ "innerFolder", "innerFolder/innerFile" ]
>  }
> Atfirst we rename all files within the source directory and then rename the 
> source directory at the last step
> The steps are
> 1.Atfirst we will rename innerFolder, 
> 2.Then rename innerFolder/innerFile 
> 3.Then rename source directory folderToRename
> Say the process crashes after step 1.
> So innerFolder has been renamed. 
> Note that Azure storage does not natively support folder. So if a directory 
> created by mkdir command, we create an empty placeholder blob with metadata 
> for the directory.
> So after step 1, the empty blob corresponding to the directory innerFolder 
> has been renamed.
> When the process comes up, in redo path it will go through the 
> –renamePending.json file try to redo the renames. 
> For each file in file list of renamePending file it checks if the source file 
> exists, if source file exists then it renames the file. When it gets 
> innerFolder, it calls filesystem.exists(innerFolder). Now 
> filesystem.exists(innerFolder) will return true, because file under that 
> folder exists even though the empty blob corresponding th that folder does 
> not exist. So it will try to rename this folder, and as the empty blob has 
> already been deleted so this fails with exception that “source blob does not 
> exist”.



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


[jira] [Created] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-08 Thread madhumita chakraborty (JIRA)
madhumita chakraborty created HADOOP-12780:
--

 Summary: During atomic rename handle crash when one directory has 
been renamed but not file under it.
 Key: HADOOP-12780
 URL: https://issues.apache.org/jira/browse/HADOOP-12780
 Project: Hadoop Common
  Issue Type: Bug
  Components: fs/azure
Affects Versions: 2.8.0
Reporter: madhumita chakraborty
Assignee: madhumita chakraborty
Priority: Critical


During atomic folder rename process preperaion we record the proposed change to 
a metadata file (-renamePending.json).
Say we are renaming parent/folderToRename to parent/renamedFolder.
folderToRename has an inner folder innerFolder and innerFolder has a file 
innerFile
Content of the –renamePending.json file will be
{ OldFolderName: /parent/ folderToRename", NewFolderName: 
"parent/renamedFolder", FileList: [ "innerFolder", "innerFolder/innerFile" ] }
Atfirst we rename all files within the source directory and then rename the 
source directory at the last step
The steps are
1.  Atfirst we will rename innerFolder, 
2.  Then rename innerFolder/innerFile 
3.  Then rename source directory folderToRename
Say the process crashes after step 1.
So innerFolder has been renamed. 
Note that Azure storage does not natively support folder. So if a directory 
created by mkdir command, we create an empty placeholder blob with metadata for 
the directory.
So after step 1, the empty blob corresponding to the directory innerFolder has 
been renamed.
When the process comes up, in redo path it will go through the 
–renamePending.json file try to redo the renames. 
For each file in file list of renamePending file it checks if the source file 
exists, if source file exists then it renames the file. When it gets 
innerFolder, it calls filesystem.exists(innerFolder). Now 
filesystem.exists(innerFolder) will return true, because file under that folder 
exists even though the empty blob corresponding th that folder does not exist. 
So it will try to rename this folder, and as the empty blob has already been 
deleted so this fails with exception that “source blob does not exist”.



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


[jira] [Updated] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-08 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12780:
---
Description: 
During atomic folder rename process preperaion we record the proposed change to 
a metadata file (-renamePending.json).
Say we are renaming parent/folderToRename to parent/renamedFolder.
folderToRename has an inner folder innerFolder and innerFolder has a file 
innerFile
Content of the –renamePending.json file will be
{   OldFolderName: parent/ folderToRename",
 NewFolderName: "parent/renamedFolder", 
 FileList: [ "innerFolder", "innerFolder/innerFile" ]
 }

Atfirst we rename all files within the source directory and then rename the 
source directory at the last step
The steps are
1.  Atfirst we will rename innerFolder, 
2.  Then rename innerFolder/innerFile 
3.  Then rename source directory folderToRename
Say the process crashes after step 1.
So innerFolder has been renamed. 
Note that Azure storage does not natively support folder. So if a directory 
created by mkdir command, we create an empty placeholder blob with metadata for 
the directory.
So after step 1, the empty blob corresponding to the directory innerFolder has 
been renamed.
When the process comes up, in redo path it will go through the 
–renamePending.json file try to redo the renames. 
For each file in file list of renamePending file it checks if the source file 
exists, if source file exists then it renames the file. When it gets 
innerFolder, it calls filesystem.exists(innerFolder). Now 
filesystem.exists(innerFolder) will return true, because file under that folder 
exists even though the empty blob corresponding th that folder does not exist. 
So it will try to rename this folder, and as the empty blob has already been 
deleted so this fails with exception that “source blob does not exist”.

  was:
During atomic folder rename process preperaion we record the proposed change to 
a metadata file (-renamePending.json).
Say we are renaming parent/folderToRename to parent/renamedFolder.
folderToRename has an inner folder innerFolder and innerFolder has a file 
innerFile
Content of the –renamePending.json file will be
{ OldFolderName: parent/ folderToRename", NewFolderName: 
"parent/renamedFolder", FileList: [ "innerFolder", "innerFolder/innerFile" ] }
Atfirst we rename all files within the source directory and then rename the 
source directory at the last step
The steps are
1.  Atfirst we will rename innerFolder, 
2.  Then rename innerFolder/innerFile 
3.  Then rename source directory folderToRename
Say the process crashes after step 1.
So innerFolder has been renamed. 
Note that Azure storage does not natively support folder. So if a directory 
created by mkdir command, we create an empty placeholder blob with metadata for 
the directory.
So after step 1, the empty blob corresponding to the directory innerFolder has 
been renamed.
When the process comes up, in redo path it will go through the 
–renamePending.json file try to redo the renames. 
For each file in file list of renamePending file it checks if the source file 
exists, if source file exists then it renames the file. When it gets 
innerFolder, it calls filesystem.exists(innerFolder). Now 
filesystem.exists(innerFolder) will return true, because file under that folder 
exists even though the empty blob corresponding th that folder does not exist. 
So it will try to rename this folder, and as the empty blob has already been 
deleted so this fails with exception that “source blob does not exist”.


> During atomic rename handle crash when one directory has been renamed but not 
> file under it.
> 
>
> Key: HADOOP-12780
> URL: https://issues.apache.org/jira/browse/HADOOP-12780
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Affects Versions: 2.8.0
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
>
> During atomic folder rename process preperaion we record the proposed change 
> to a metadata file (-renamePending.json).
> Say we are renaming parent/folderToRename to parent/renamedFolder.
> folderToRename has an inner folder innerFolder and innerFolder has a file 
> innerFile
> Content of the –renamePending.json file will be
> {   OldFolderName: parent/ folderToRename",
>  NewFolderName: "parent/renamedFolder", 
>  FileList: [ "innerFolder", "innerFolder/innerFile" ]
>  }
> Atfirst we rename all files within the source directory and then rename the 
> source directory at the last step
> The steps are
> 1.Atfirst we will rename innerFolder, 
> 2.Then rename innerFolder/innerFile 
> 3.Then rename source directory folderToRename
> Say the process crashes after 

[jira] [Updated] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-08 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12780:
---
Description: 
During atomic folder rename process preperaion we record the proposed change to 
a metadata file (-renamePending.json).
Say we are renaming parent/folderToRename to parent/renamedFolder.
folderToRename has an inner folder innerFolder and innerFolder has a file 
innerFile
Content of the –renamePending.json file will be
{ OldFolderName: parent/ folderToRename", NewFolderName: 
"parent/renamedFolder", FileList: [ "innerFolder", "innerFolder/innerFile" ] }
Atfirst we rename all files within the source directory and then rename the 
source directory at the last step
The steps are
1.  Atfirst we will rename innerFolder, 
2.  Then rename innerFolder/innerFile 
3.  Then rename source directory folderToRename
Say the process crashes after step 1.
So innerFolder has been renamed. 
Note that Azure storage does not natively support folder. So if a directory 
created by mkdir command, we create an empty placeholder blob with metadata for 
the directory.
So after step 1, the empty blob corresponding to the directory innerFolder has 
been renamed.
When the process comes up, in redo path it will go through the 
–renamePending.json file try to redo the renames. 
For each file in file list of renamePending file it checks if the source file 
exists, if source file exists then it renames the file. When it gets 
innerFolder, it calls filesystem.exists(innerFolder). Now 
filesystem.exists(innerFolder) will return true, because file under that folder 
exists even though the empty blob corresponding th that folder does not exist. 
So it will try to rename this folder, and as the empty blob has already been 
deleted so this fails with exception that “source blob does not exist”.

  was:
During atomic folder rename process preperaion we record the proposed change to 
a metadata file (-renamePending.json).
Say we are renaming parent/folderToRename to parent/renamedFolder.
folderToRename has an inner folder innerFolder and innerFolder has a file 
innerFile
Content of the –renamePending.json file will be
{ OldFolderName: /parent/ folderToRename", NewFolderName: 
"parent/renamedFolder", FileList: [ "innerFolder", "innerFolder/innerFile" ] }
Atfirst we rename all files within the source directory and then rename the 
source directory at the last step
The steps are
1.  Atfirst we will rename innerFolder, 
2.  Then rename innerFolder/innerFile 
3.  Then rename source directory folderToRename
Say the process crashes after step 1.
So innerFolder has been renamed. 
Note that Azure storage does not natively support folder. So if a directory 
created by mkdir command, we create an empty placeholder blob with metadata for 
the directory.
So after step 1, the empty blob corresponding to the directory innerFolder has 
been renamed.
When the process comes up, in redo path it will go through the 
–renamePending.json file try to redo the renames. 
For each file in file list of renamePending file it checks if the source file 
exists, if source file exists then it renames the file. When it gets 
innerFolder, it calls filesystem.exists(innerFolder). Now 
filesystem.exists(innerFolder) will return true, because file under that folder 
exists even though the empty blob corresponding th that folder does not exist. 
So it will try to rename this folder, and as the empty blob has already been 
deleted so this fails with exception that “source blob does not exist”.


> During atomic rename handle crash when one directory has been renamed but not 
> file under it.
> 
>
> Key: HADOOP-12780
> URL: https://issues.apache.org/jira/browse/HADOOP-12780
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Affects Versions: 2.8.0
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
>
> During atomic folder rename process preperaion we record the proposed change 
> to a metadata file (-renamePending.json).
> Say we are renaming parent/folderToRename to parent/renamedFolder.
> folderToRename has an inner folder innerFolder and innerFolder has a file 
> innerFile
> Content of the –renamePending.json file will be
> { OldFolderName: parent/ folderToRename", NewFolderName: 
> "parent/renamedFolder", FileList: [ "innerFolder", "innerFolder/innerFile" ] }
> Atfirst we rename all files within the source directory and then rename the 
> source directory at the last step
> The steps are
> 1.Atfirst we will rename innerFolder, 
> 2.Then rename innerFolder/innerFile 
> 3.Then rename source directory folderToRename
> Say the process crashes after step 1.
> So innerFolder has 

[jira] [Updated] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-08 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12780:
---
Status: Patch Available  (was: Open)

> During atomic rename handle crash when one directory has been renamed but not 
> file under it.
> 
>
> Key: HADOOP-12780
> URL: https://issues.apache.org/jira/browse/HADOOP-12780
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Affects Versions: 2.8.0
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12780.001.patch
>
>
> During atomic folder rename process preperaion we record the proposed change 
> to a metadata file (-renamePending.json).
> Say we are renaming parent/folderToRename to parent/renamedFolder.
> folderToRename has an inner folder innerFolder and innerFolder has a file 
> innerFile
> Content of the –renamePending.json file will be
> {   OldFolderName: parent/ folderToRename",
>  NewFolderName: "parent/renamedFolder", 
>  FileList: [ "innerFolder", "innerFolder/innerFile" ]
>  }
> Atfirst we rename all files within the source directory and then rename the 
> source directory at the last step
> The steps are
> 1.Atfirst we will rename innerFolder, 
> 2.Then rename innerFolder/innerFile 
> 3.Then rename source directory folderToRename
> Say the process crashes after step 1.
> So innerFolder has been renamed. 
> Note that Azure storage does not natively support folder. So if a directory 
> created by mkdir command, we create an empty placeholder blob with metadata 
> for the directory.
> So after step 1, the empty blob corresponding to the directory innerFolder 
> has been renamed.
> When the process comes up, in redo path it will go through the 
> –renamePending.json file try to redo the renames. 
> For each file in file list of renamePending file it checks if the source file 
> exists, if source file exists then it renames the file. When it gets 
> innerFolder, it calls filesystem.exists(innerFolder). Now 
> filesystem.exists(innerFolder) will return true, because file under that 
> folder exists even though the empty blob corresponding th that folder does 
> not exist. So it will try to rename this folder, and as the empty blob has 
> already been deleted so this fails with exception that “source blob does not 
> exist”.



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


[jira] [Updated] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-08 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12780:
---
Status: Open  (was: Patch Available)

> During atomic rename handle crash when one directory has been renamed but not 
> file under it.
> 
>
> Key: HADOOP-12780
> URL: https://issues.apache.org/jira/browse/HADOOP-12780
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Affects Versions: 2.8.0
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12780.001.patch
>
>
> During atomic folder rename process preperaion we record the proposed change 
> to a metadata file (-renamePending.json).
> Say we are renaming parent/folderToRename to parent/renamedFolder.
> folderToRename has an inner folder innerFolder and innerFolder has a file 
> innerFile
> Content of the –renamePending.json file will be
> {   OldFolderName: parent/ folderToRename",
>  NewFolderName: "parent/renamedFolder", 
>  FileList: [ "innerFolder", "innerFolder/innerFile" ]
>  }
> Atfirst we rename all files within the source directory and then rename the 
> source directory at the last step
> The steps are
> 1.Atfirst we will rename innerFolder, 
> 2.Then rename innerFolder/innerFile 
> 3.Then rename source directory folderToRename
> Say the process crashes after step 1.
> So innerFolder has been renamed. 
> Note that Azure storage does not natively support folder. So if a directory 
> created by mkdir command, we create an empty placeholder blob with metadata 
> for the directory.
> So after step 1, the empty blob corresponding to the directory innerFolder 
> has been renamed.
> When the process comes up, in redo path it will go through the 
> –renamePending.json file try to redo the renames. 
> For each file in file list of renamePending file it checks if the source file 
> exists, if source file exists then it renames the file. When it gets 
> innerFolder, it calls filesystem.exists(innerFolder). Now 
> filesystem.exists(innerFolder) will return true, because file under that 
> folder exists even though the empty blob corresponding th that folder does 
> not exist. So it will try to rename this folder, and as the empty blob has 
> already been deleted so this fails with exception that “source blob does not 
> exist”.



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


[jira] [Updated] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-08 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12780:
---
Attachment: (was: HADOOP-12780.001.patch)

> During atomic rename handle crash when one directory has been renamed but not 
> file under it.
> 
>
> Key: HADOOP-12780
> URL: https://issues.apache.org/jira/browse/HADOOP-12780
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Affects Versions: 2.8.0
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12780.001.patch
>
>
> During atomic folder rename process preperaion we record the proposed change 
> to a metadata file (-renamePending.json).
> Say we are renaming parent/folderToRename to parent/renamedFolder.
> folderToRename has an inner folder innerFolder and innerFolder has a file 
> innerFile
> Content of the –renamePending.json file will be
> {   OldFolderName: parent/ folderToRename",
>  NewFolderName: "parent/renamedFolder", 
>  FileList: [ "innerFolder", "innerFolder/innerFile" ]
>  }
> Atfirst we rename all files within the source directory and then rename the 
> source directory at the last step
> The steps are
> 1.Atfirst we will rename innerFolder, 
> 2.Then rename innerFolder/innerFile 
> 3.Then rename source directory folderToRename
> Say the process crashes after step 1.
> So innerFolder has been renamed. 
> Note that Azure storage does not natively support folder. So if a directory 
> created by mkdir command, we create an empty placeholder blob with metadata 
> for the directory.
> So after step 1, the empty blob corresponding to the directory innerFolder 
> has been renamed.
> When the process comes up, in redo path it will go through the 
> –renamePending.json file try to redo the renames. 
> For each file in file list of renamePending file it checks if the source file 
> exists, if source file exists then it renames the file. When it gets 
> innerFolder, it calls filesystem.exists(innerFolder). Now 
> filesystem.exists(innerFolder) will return true, because file under that 
> folder exists even though the empty blob corresponding th that folder does 
> not exist. So it will try to rename this folder, and as the empty blob has 
> already been deleted so this fails with exception that “source blob does not 
> exist”.



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


[jira] [Updated] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-08 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12780:
---
Attachment: HADOOP-12780.001.patch

> During atomic rename handle crash when one directory has been renamed but not 
> file under it.
> 
>
> Key: HADOOP-12780
> URL: https://issues.apache.org/jira/browse/HADOOP-12780
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Affects Versions: 2.8.0
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12780.001.patch
>
>
> During atomic folder rename process preperaion we record the proposed change 
> to a metadata file (-renamePending.json).
> Say we are renaming parent/folderToRename to parent/renamedFolder.
> folderToRename has an inner folder innerFolder and innerFolder has a file 
> innerFile
> Content of the –renamePending.json file will be
> {   OldFolderName: parent/ folderToRename",
>  NewFolderName: "parent/renamedFolder", 
>  FileList: [ "innerFolder", "innerFolder/innerFile" ]
>  }
> Atfirst we rename all files within the source directory and then rename the 
> source directory at the last step
> The steps are
> 1.Atfirst we will rename innerFolder, 
> 2.Then rename innerFolder/innerFile 
> 3.Then rename source directory folderToRename
> Say the process crashes after step 1.
> So innerFolder has been renamed. 
> Note that Azure storage does not natively support folder. So if a directory 
> created by mkdir command, we create an empty placeholder blob with metadata 
> for the directory.
> So after step 1, the empty blob corresponding to the directory innerFolder 
> has been renamed.
> When the process comes up, in redo path it will go through the 
> –renamePending.json file try to redo the renames. 
> For each file in file list of renamePending file it checks if the source file 
> exists, if source file exists then it renames the file. When it gets 
> innerFolder, it calls filesystem.exists(innerFolder). Now 
> filesystem.exists(innerFolder) will return true, because file under that 
> folder exists even though the empty blob corresponding th that folder does 
> not exist. So it will try to rename this folder, and as the empty blob has 
> already been deleted so this fails with exception that “source blob does not 
> exist”.



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


[jira] [Updated] (HADOOP-12780) During atomic rename handle crash when one directory has been renamed but not file under it.

2016-02-08 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12780:
---
Status: Patch Available  (was: Open)

> During atomic rename handle crash when one directory has been renamed but not 
> file under it.
> 
>
> Key: HADOOP-12780
> URL: https://issues.apache.org/jira/browse/HADOOP-12780
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Affects Versions: 2.8.0
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12780.001.patch
>
>
> During atomic folder rename process preperaion we record the proposed change 
> to a metadata file (-renamePending.json).
> Say we are renaming parent/folderToRename to parent/renamedFolder.
> folderToRename has an inner folder innerFolder and innerFolder has a file 
> innerFile
> Content of the –renamePending.json file will be
> {   OldFolderName: parent/ folderToRename",
>  NewFolderName: "parent/renamedFolder", 
>  FileList: [ "innerFolder", "innerFolder/innerFile" ]
>  }
> Atfirst we rename all files within the source directory and then rename the 
> source directory at the last step
> The steps are
> 1.Atfirst we will rename innerFolder, 
> 2.Then rename innerFolder/innerFile 
> 3.Then rename source directory folderToRename
> Say the process crashes after step 1.
> So innerFolder has been renamed. 
> Note that Azure storage does not natively support folder. So if a directory 
> created by mkdir command, we create an empty placeholder blob with metadata 
> for the directory.
> So after step 1, the empty blob corresponding to the directory innerFolder 
> has been renamed.
> When the process comes up, in redo path it will go through the 
> –renamePending.json file try to redo the renames. 
> For each file in file list of renamePending file it checks if the source file 
> exists, if source file exists then it renames the file. When it gets 
> innerFolder, it calls filesystem.exists(innerFolder). Now 
> filesystem.exists(innerFolder) will return true, because file under that 
> folder exists even though the empty blob corresponding th that folder does 
> not exist. So it will try to rename this folder, and as the empty blob has 
> already been deleted so this fails with exception that “source blob does not 
> exist”.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-01-12 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Attachment: HADOOP-12535.001.patch

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-01-12 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12535:
---
Status: Patch Available  (was: Open)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
> Attachments: HADOOP-12535.001.patch
>
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Assigned] (HADOOP-12535) Run FileSystem contract tests with hadoop-azure.

2016-01-10 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty reassigned HADOOP-12535:
--

Assignee: madhumita chakraborty  (was: Dushyanth)

> Run FileSystem contract tests with hadoop-azure.
> 
>
> Key: HADOOP-12535
> URL: https://issues.apache.org/jira/browse/HADOOP-12535
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: azure, test
>Reporter: Chris Nauroth
>Assignee: madhumita chakraborty
>
> This issue proposes to implement the Hadoop {{FileSystem}} contract tests for 
> hadoop-azure/WASB.  The contract tests define the expected semantics of the 
> {{FileSystem}}, so running these for hadoop-azure is likely to catch 
> potential problems and improve overall quality.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Open  (was: Patch Available)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Patch Available  (was: Open)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Attachment: HADOOP-12678.004.patch

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Open  (was: Patch Available)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Attachment: HADOOP-12678.005.patch

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Patch Available  (was: Open)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Commented] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

[ 
https://issues.apache.org/jira/browse/HADOOP-12678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15085902#comment-15085902
 ] 

madhumita chakraborty commented on HADOOP-12678:


[~cnauroth] I have addressed your comments. Could you please take a look?

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Attachment: HADOOP-12678.006.patch

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch, 
> HADOOP-12678.006.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Patch Available  (was: Open)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch, 
> HADOOP-12678.006.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Open  (was: Patch Available)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Attachment: (was: HADOOP-12678.006.patch)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Attachment: HADOOP-12678.006.patch

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch, 
> HADOOP-12678.006.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Patch Available  (was: Open)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch, 
> HADOOP-12678.006.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2016-01-06 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Open  (was: Patch Available)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch, HADOOP-12678.004.patch, HADOOP-12678.005.patch, 
> HADOOP-12678.006.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Patch Available  (was: Open)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Attachment: HADOOP-12678.001.patch

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Patch Available  (was: Open)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Open  (was: Patch Available)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Attachment: HADOOP-12678.002.patch

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Commented] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

[ 
https://issues.apache.org/jira/browse/HADOOP-12678?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15073513#comment-15073513
 ] 

madhumita chakraborty commented on HADOOP-12678:


[~cnauroth],[~gouravk],[~pravinmittal],[~dchickabasapa] could you guys please 
take a look at the patch?

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Open  (was: Patch Available)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Status: Patch Available  (was: Open)

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Updated] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-28 Thread madhumita chakraborty (JIRA)

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

madhumita chakraborty updated HADOOP-12678:
---
Attachment: HADOOP-12678.003.patch

> Handle empty rename pending metadata file during atomic rename in redo path
> ---
>
> Key: HADOOP-12678
> URL: https://issues.apache.org/jira/browse/HADOOP-12678
> Project: Hadoop Common
>  Issue Type: Bug
>  Components: fs/azure
>Reporter: madhumita chakraborty
>Assignee: madhumita chakraborty
>Priority: Critical
> Attachments: HADOOP-12678.001.patch, HADOOP-12678.002.patch, 
> HADOOP-12678.003.patch
>
>
> Handle empty rename pending metadata file during atomic rename in redo path
> During atomic rename we create metadata file for rename(-renamePending.json). 
> We create that in 2 steps
> 1. We create an empty blob corresponding to the .json file in its real 
> location
> 2. We create a scratch file to which we write the contents of the rename 
> pending which is then copied over into the blob described in 1
> If process crash occurs after step 1 and before step 2 is complete - we will 
> be left with a zero size blob corresponding to the pending rename metadata 
> file.
> This kind of scenario can happen in the /hbase/.tmp folder because it is 
> considered a candidate folder for atomic rename. Now when HMaster starts up 
> it executes listStatus on the .tmp folder to clean up pending data. At this 
> stage due to the lazy pending rename complete process we look for these json 
> files. On seeing an empty file the process simply throws a fatal exception 
> assuming something went wrong.



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


[jira] [Created] (HADOOP-12678) Handle empty rename pending metadata file during atomic rename in redo path

2015-12-23 Thread madhumita chakraborty (JIRA)
madhumita chakraborty created HADOOP-12678:
--

 Summary: Handle empty rename pending metadata file during atomic 
rename in redo path
 Key: HADOOP-12678
 URL: https://issues.apache.org/jira/browse/HADOOP-12678
 Project: Hadoop Common
  Issue Type: Bug
  Components: fs/azure
Reporter: madhumita chakraborty
Assignee: madhumita chakraborty
Priority: Critical


Handle empty rename pending metadata file during atomic rename in redo path
During atomic rename we create metadata file for rename(-renamePending.json). 
We create that in 2 steps
1. We create an empty blob corresponding to the .json file in its real location
2. We create a scratch file to which we write the contents of the rename 
pending which is then copied over into the blob described in 1
If process crash occurs after step 1 and before step 2 is complete - we will be 
left with a zero size blob corresponding to the pending rename metadata file.
This kind of scenario can happen in the /hbase/.tmp folder because it is 
considered a candidate folder for atomic rename. Now when HMaster starts up it 
executes listStatus on the .tmp folder to clean up pending data. At this stage 
due to the lazy pending rename complete process we look for these json files. 
On seeing an empty file the process simply throws a fatal exception assuming 
something went wrong.




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