You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Mingliang Liu (JIRA)" <ji...@apache.org> on 2017/03/30 01:24:41 UTC
[jira] [Comment Edited] (HADOOP-14226) S3Guard:
DynamoDBMetadata::move() should populate ancestor directories of
destination paths
[ https://issues.apache.org/jira/browse/HADOOP-14226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15948220#comment-15948220 ]
Mingliang Liu edited comment on HADOOP-14226 at 3/30/17 1:24 AM:
-----------------------------------------------------------------
The v1 patch is to follow [~fabbri]'s comments.
# The newly added test will fail w/o this change, while it succeed w/ this change.
# The test directory set up for {{ITestDynamoDBMetadataStoreScale}} is not cleaned up w/o this patch, while it is cleaned up w/ this patch.
Patch is for review. I'll ran integration tests and post test report later.
was (Author: liuml07):
The v1 patch is to follow [~fabbri]'s comments.
The newly added test will fail w/o this change, while it succeed w/ this change.
Patch is for review. I'll ran integration tests and post test report later.
> S3Guard: DynamoDBMetadata::move() should populate ancestor directories of destination paths
> -------------------------------------------------------------------------------------------
>
> Key: HADOOP-14226
> URL: https://issues.apache.org/jira/browse/HADOOP-14226
> Project: Hadoop Common
> Issue Type: Sub-task
> Components: fs/s3
> Affects Versions: HADOOP-13345
> Reporter: Mingliang Liu
> Assignee: Mingliang Liu
> Attachments: HADOOP-14226-HADOOP-13345.000.patch, HADOOP-14226-HADOOP-13345.001.patch
>
>
> UPDATE: Instead of changing the test, in this JIRA we make sure for each path to put, DDBMS::move() has records of each directory up to the root. See [~fabbri]'s comment in this JIRA for more detail.
> After running {{ITestDynamoDBMetadataStoreScale}}, the test data is not cleaned up. There is a call to {{clearMetadataStore(ms, count);}} in the finally clause though. The reason is that, the internally called method {{DynamoDBMetadataStore::deleteSubtree()}} is assuming there should be an item for the parent dest path:
> {code}
> parent=/fake-bucket, child=moved-here, is_dir=true
> {code}
> In DynamoDBMetadataStore implementation, we assume that _if a path exists, all its ancestors will also exist in the table_. We need to pre-create dest path to maintain this invariant so that test data can be cleaned up successfully.
> I think there may be other tests with the same problem. Let's identify/address them separately.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org