[ https://issues.apache.org/jira/browse/HDFS-13021?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16340602#comment-16340602 ]
Xiao Chen commented on HDFS-13021: ---------------------------------- Thanks [~GeLiXin] for reporting the issue and providing a patch. Looks like there are some unnecessary space-only changes (e.g. FSDirStatAndListingOp), could you get rid of them in the next rev? No need to roll a version only for this though. Thinking about this more, this appear to be trickier than EC / EZ since the blocks may be moved, but OTOH snapshots are supposed to be immutable. And if a block is only in snapshot then it will not be moved because the mover can't see it from the file name. Hi [~szetszwo], What's your take on this one? Is this behavior by design or should be improved in some way? > Incorrect storage policy of snapshot file was returned by getStoragePolicy > command > ---------------------------------------------------------------------------------- > > Key: HDFS-13021 > URL: https://issues.apache.org/jira/browse/HDFS-13021 > Project: Hadoop HDFS > Issue Type: Bug > Components: hdfs, snapshots > Affects Versions: 3.1.0 > Reporter: LiXin Ge > Assignee: LiXin Ge > Priority: Major > Attachments: HDFS-13021.001.patch > > > Snapshots are supposed to be immutable and read only, so the file status > which in a snapshot path shouldn't follow the original file's change. > The StoragePolicy in snapshot situation acts like a bug now. > ----------- > Reproduction:Operation on snapshottable dir {{/storagePolicy}} > *before make snapshot:* > {code:java} > [bin]# hdfs storagepolicies -setStoragePolicy -path /storagePolicy -policy > PROVIDED > Set storage policy PROVIDED on /storagePolicy > [bin]# hadoop fs -put /home/file /storagePolicy/file_PROVIDED > [bin]# hdfs storagepolicies -getStoragePolicy -path > /storagePolicy/file_PROVIDED > The storage policy of /storagePolicy/file_PROVIDED: > BlockStoragePolicy{HOT:7, storageTypes=[DISK], creationFallbacks=[], > replicationFallbacks=[ARCHIVE]} > {code} > *make snapshot and check:* > {code:java} > [bin]# hdfs dfs -createSnapshot /storagePolicy s3_PROVIDED > Created snapshot /storagePolicy/.snapshot/s3_PROVIDED > [bin]# hdfs storagepolicies -getStoragePolicy -path > /storagePolicy/.snapshot/s3_PROVIDED/file_PROVIDED > The storage policy of /storagePolicy/.snapshot/s3_PROVIDED/file_PROVIDED: > BlockStoragePolicy{PROVIDED:1, storageTypes=[PROVIDED, DISK], > creationFallbacks=[PROVIDED, DISK], replicationFallbacks=[PROVIDED, DISK]} > {code} > *change the StroagePolicy and check again:* > {code:java} > [bin]# hdfs storagepolicies -setStoragePolicy -path /storagePolicy -policy HOT > Set storage policy HOT on /storagePolicy > [bin]# hdfs storagepolicies -getStoragePolicy -path > /storagePolicy/.snapshot/s3_PROVIDED/file_PROVIDED > The storage policy of /storagePolicy/.snapshot/s3_PROVIDED/file_PROVIDED: > BlockStoragePolicy{HOT:7, storageTypes=[DISK], creationFallbacks=[], > replicationFallbacks=[ARCHIVE]} ---- It shouldn't be HOT > {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org