You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Shashikant Banerjee (Jira)" <ji...@apache.org> on 2019/08/29 09:20:00 UTC

[jira] [Resolved] (HDDS-720) ContainerReportPublisher fails when the container is marked unhealthy on Datanodes

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

Shashikant Banerjee resolved HDDS-720.
--------------------------------------
    Fix Version/s: 0.5.0
       Resolution: Duplicate

> ContainerReportPublisher fails when the container is marked unhealthy on Datanodes
> ----------------------------------------------------------------------------------
>
>                 Key: HDDS-720
>                 URL: https://issues.apache.org/jira/browse/HDDS-720
>             Project: Hadoop Distributed Data Store
>          Issue Type: Test
>          Components: Ozone Datanode, SCM
>    Affects Versions: 0.4.0
>            Reporter: Shashikant Banerjee
>            Assignee: Shashikant Banerjee
>            Priority: Critical
>             Fix For: 0.5.0
>
>
> {code:java}
> 2018-10-24 01:15:00,265 ERROR report.ReportPublisher (ReportPublisher.java:publishReport(88)) - Exception while publishing report.
> org.apache.hadoop.hdds.scm.container.common.helpers.StorageContainerException: Invalid Container state found: 2
> at org.apache.hadoop.ozone.container.keyvalue.KeyValueContainer.getHddsState(KeyValueContainer.java:558)
> at org.apache.hadoop.ozone.container.keyvalue.KeyValueContainer.getContainerReport(KeyValueContainer.java:532)
> at org.apache.hadoop.ozone.container.common.impl.ContainerSet.getContainerReport(ContainerSet.java:203)
> at org.apache.hadoop.ozone.container.ozoneimpl.OzoneContainer.getContainerReport(OzoneContainer.java:168)
> at org.apache.hadoop.ozone.container.common.report.ContainerReportPublisher.getReport(ContainerReportPublisher.java:83)
> at org.apache.hadoop.ozone.container.common.report.ContainerReportPublisher.getReport(ContainerReportPublisher.java:50)
> at org.apache.hadoop.ozone.container.common.report.ReportPublisher.publishReport(ReportPublisher.java:86)
> at org.apache.hadoop.ozone.container.common.report.ReportPublisher.run(ReportPublisher.java:73)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> {code}
> There is no mapping exist for Unhealthy state in Datanode for containers to LifecycleState of containers in SCM. Hence, the container report publisher fails with Invalid container state exception.
> A container is marked unhealthy in Datanode only if a certain write transaction fails, so that successive updates get rejected and a close container action is initiated to SCM to close the container. For all practical cases, a container in unhealthy state can also be mapped to a container in closing state in SCM.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-help@hadoop.apache.org