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

Xiaoyu Yao commented on HDFS-12016:
-----------------------------------

[~cheersyang]: Yes, this is the same root cause. However, my original comments 
on HDFS-11844 is incorrect. The in-memory map that is not loaded correctly is 
ContainerManagerImpl#containerMap. In the case below, we are trying to load 
containers (by *.container) on the datanode from here 
{{/home/wwei/hadoop-data/scm/}}, which creates an empty containerMap. The 
correct path should be {{/home/wwei/hadoop-data/scm/repository}}. Adding the 
"repository" to the path fix the reloading problem in real cluster but there 
are some test failures with MiniOzoneCluster that I'm looking at.

{code}
/home/wwei/hadoop-data/scm/repository/20170522c1.container
{code}  



> Ozone: SCM: Container metadata are not loaded properly after datanode restart
> -----------------------------------------------------------------------------
>
>                 Key: HDFS-12016
>                 URL: https://issues.apache.org/jira/browse/HDFS-12016
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: ozone, scm
>    Affects Versions: HDFS-7240
>            Reporter: Nandakumar
>            Assignee: Xiaoyu Yao
>
> Repro steps (Credit to [~nandakumar131])
> 1. create volume/bucket/key 
> 2. putkey
> 3. restart DN
> 4. getkey will hit error on container not found like below.
> {code}
> 2017-06-22 15:28:29,950 [Thread-48] INFO  (OzoneExceptionMapper.java:39)  
> vol-2/bucket-1/key-1 xyao 8727acc4-c1e9-4ba3-a819-4c0e16957079 - Returning 
> exception. ex: 
> {"httpCode":500,"shortMessage":"internalServerError","resource":"xyao","message":"org.apache.hadoop.scm.container.common.helpers.StorageContainerException:
>  Unable to find the container. Name: 
> 48cb0c3d-0537-4cff-b716-a7f69ebf50bc","requestID":"8 
> {code}
> The root cause is OzoneContainer#OzoneContainer does not load containers from 
> repository properly when ozone.container.metadata.dirs are specified. 
> The fix is to append the CONTAINER_ROOT_PREFIX when looking for containers on 
> the datanode.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to