You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by "Devesh Kumar Singh (Jira)" <ji...@apache.org> on 2023/04/05 18:16:00 UTC
[jira] [Comment Edited] (HDDS-8377) Do not count containers with all unhealthy replicas as missing in Recon
[ https://issues.apache.org/jira/browse/HDDS-8377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17709049#comment-17709049 ]
Devesh Kumar Singh edited comment on HDDS-8377 at 4/5/23 6:15 PM:
------------------------------------------------------------------
[~erose] - I analyzed HDDS-8377 and found that Recon API already provides containers all unhealthy replicas and will not consider and put them in category of missing if API is provided that filter parameter with value "ALL_REPLICAS_UNHEALTHY" because if this filter is provided in API, then below logic is being used , as per below logic it provides those containers which are marked as under replicated and container's actual replica count is zero.
{{if (state.equals(ALL_REPLICAS_UNHEALTHY)) {}}
{\{ query.addConditions(UNHEALTHY_CONTAINERS.CONTAINER_STATE}}
{\{ .eq(UNDER_REPLICATED.toString()));}}
{{{{}} query.addConditions(UNHEALTHY_CONTAINERS.ACTUAL_REPLICA_COUNT.eq(0));{}}}
Containers are marked as {{UNDER_REPLICATED}} by Recon, when some healthy replicas are present for a container and {{replicaDelta > 0}} where \{{replicaDelta = repFactor - this.healthyReplicas.size(); }}
Pls let me know if this is what expected.
was (Author: JIRAUSER295411):
[~erose] - I analyzed HDDS-8377 and found that Recon API already provides containers all unhealthy replicas and will not consider and put them in category of missing if API is provided that filter parameter with value "ALL_REPLICAS_UNHEALTHY" because if this filter is provided in API, then below logic is being used , as per below logic it provides those containers which are marked as under replicated and container's actual replica count is zero.{{{}if (state.equals(ALL_REPLICAS_UNHEALTHY)) {{}}}
{{ query.addConditions(UNHEALTHY_CONTAINERS.CONTAINER_STATE}}
{{ .eq(UNDER_REPLICATED.toString()));}}
{{{} query.addConditions(UNHEALTHY_CONTAINERS.ACTUAL_REPLICA_COUNT.eq(0));{}}}Containers are marked as {{UNDER_REPLICATED}} by Recon, when some healthy replicas are present for a container and {{replicaDelta > 0}} where {{replicaDelta = repFactor - this.healthyReplicas.size(); }}Pls let me know if I am not clear or my understanding is not correct..
> Do not count containers with all unhealthy replicas as missing in Recon
> -----------------------------------------------------------------------
>
> Key: HDDS-8377
> URL: https://issues.apache.org/jira/browse/HDDS-8377
> Project: Apache Ozone
> Issue Type: Improvement
> Components: Ozone Recon
> Reporter: Ethan Rose
> Assignee: Devesh Kumar Singh
> Priority: Major
>
> Currently, if all replicas of a container are unhealthy, Recon will consider that container missing. When all replicas are unhealthy, some or all of the data in those containers could still be readable. This is different from all replicas being lost, where all the data is definitely not readable. This jira proposes adding a new category to Recon for containers where all replicas are unhealthy, and to not reuse the missing category for these containers.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@ozone.apache.org
For additional commands, e-mail: issues-help@ozone.apache.org