)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":7,"context_line":"[ceph-client] This patch set fixes several issues and extends the"},{"line_number":8,"context_line":"functionality for the function wait_for_pgs()"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"The original version of the function can fail if the Ceph cluster is in"},{"line_number":11,"context_line":"is doing a rebalance or simply working under high load, being in fact"},{"line_number":12,"context_line":"absolutely healthy. However, the deployment may fail because not all PGs"},{"line_number":13,"context_line":"are in active state at the time of check."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"7f6b1bfe_60b77bda","line":10,"range":{"start_line":10,"start_character":66,"end_line":10,"end_character":71},"updated":"2020-10-13 20:44:41.000000000","message":"delete","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":12,"context_line":"absolutely healthy. However, the deployment may fail because not all PGs"},{"line_number":13,"context_line":"are in active state at the time of check."},{"line_number":14,"context_line":"The cluster definitely will do a rebalance if the autoscaling gets"},{"line_number":15,"context_line":"triggered for some reason. Those is expected Ceph behavior, but"},{"line_number":16,"context_line":"can make the deployment fail."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"To prevent these types of false negatives, the wait_for_pgs() function"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"7f6b1bfe_80ebb7ae","line":15,"range":{"start_line":15,"start_character":27,"end_line":15,"end_character":32},"updated":"2020-10-13 20:44:41.000000000","message":"This","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":19,"context_line":"was significantly improved and now monitors two different sets of states"},{"line_number":20,"context_line":"- critical and acceptable."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Both list for critical and acceptable PGs states are located in"},{"line_number":23,"context_line":"values.yaml and could be configured by a customer."},{"line_number":24,"context_line":"The wait_while_autoscaling() function was"},{"line_number":25,"context_line":"added to the patch set to exclude possible autoscaling interference with"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"7f6b1bfe_20c5833d","line":22,"updated":"2020-10-13 20:44:41.000000000","message":"s","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":26,"context_line":"the PGs status check."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Also the service template joinListWithSeparator was added to the"},{"line_number":29,"context_line":"[helm-toolkit]. This template alows to convert a yaml list into"},{"line_number":30,"context_line":"a separated string with given eliminator. Below is an example of use."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Example of use:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"7f6b1bfe_60dc9b18","line":29,"range":{"start_line":29,"start_character":36,"end_line":29,"end_character":46},"updated":"2020-10-13 20:44:41.000000000","message":"converting","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"d9c9a994dc533c2cf81d0befd6b40ff4a83acac5","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Vladimir Sigunov \u003cvladimir.sigunov@att.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2020-10-14 21:45:24 +0000"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"[ceph-client] This patch set fixes several issues and extends the"},{"line_number":8,"context_line":"functionality for the function wait_for_pgs()"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"The original version of the function can fail if the Ceph cluster"},{"line_number":11,"context_line":"is doing a rebalance or simply working under high load, being in fact"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"dd2251e3_3ecee0ec","line":8,"range":{"start_line":7,"start_character":17,"end_line":8,"end_character":32},"updated":"2020-11-24 00:07:06.000000000","message":"shorter lilne would be better","commit_id":"7adea987907239529b6b3520dd882f9942158254"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"d9c9a994dc533c2cf81d0befd6b40ff4a83acac5","unresolved":true,"context_lines":[{"line_number":8,"context_line":"functionality for the function wait_for_pgs()"},{"line_number":9,"context_line":""},{"line_number":10,"context_line":"The original version of the function can fail if the Ceph cluster"},{"line_number":11,"context_line":"is doing a rebalance or simply working under high load, being in fact"},{"line_number":12,"context_line":"absolutely healthy. However, the deployment may fail because not all PGs"},{"line_number":13,"context_line":"are in active state at the time of check."},{"line_number":14,"context_line":"The cluster definitely will do a rebalance if the autoscaling gets"},{"line_number":15,"context_line":"triggered for some reason. This is expected Ceph behavior, but"},{"line_number":16,"context_line":"can make the deployment fail."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"To prevent these types of false negatives, the wait_for_pgs() function"},{"line_number":19,"context_line":"was significantly improved and now monitors two different sets of states"},{"line_number":20,"context_line":"- critical and acceptable."},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Both lists for critical and acceptable PGs states are located in"},{"line_number":23,"context_line":"values.yaml and could be configured by a customer."},{"line_number":24,"context_line":"The wait_while_autoscaling() function was"},{"line_number":25,"context_line":"added to the patch set to exclude possible autoscaling interference with"},{"line_number":26,"context_line":"the PGs status check."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Also the service template joinListWithSeparator was added to the"},{"line_number":29,"context_line":"[helm-toolkit]. This template alows converting a yaml list into"},{"line_number":30,"context_line":"a separated string with given eliminator. Below is an example of use."},{"line_number":31,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":12,"id":"2e80d940_84f1b147","line":28,"range":{"start_line":11,"start_character":10,"end_line":28,"end_character":40},"updated":"2020-11-24 00:07:06.000000000","message":"fmt/reflow","commit_id":"7adea987907239529b6b3520dd882f9942158254"}],"ceph-client/templates/bin/pool/_init.sh.tpl":[{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    query\u003d\".pg_stats | ${query}\""},{"line_number":104,"context_line":"  fi"},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"  # Now we will define two filters. First one is the filer for critical PG states"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"  {{- if .Values.conf.features.pg_critical_states }}"},{"line_number":109,"context_line":"  check_for_critical_statuses\u003d\u0027. | select(.state | test({{ tuple \"|\" .Values.conf.features.pg_critical_states | include \"helm-toolkit.utils.joinListWithSeparator\" | quote }}))\u0027"}],"source_content_type":"text/x-smarty","patch_set":9,"id":"7f6b1bfe_c0f5af85","line":106,"range":{"start_line":106,"start_character":53,"end_line":106,"end_character":58},"updated":"2020-10-13 20:44:41.000000000","message":"filter","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":"  # Loop until all pgs are active or some of them are in one of acceptable states"},{"line_number":122,"context_line":"  while [[ $pgs_ready -lt 3 \u0026\u0026 $iterations_to_wait -gt 0 ]]; do"},{"line_number":123,"context_line":"    #First we are filtering out all pgs which are active+clean"},{"line_number":124,"context_line":"    pgs_state\u003d$(ceph --cluster ${CLUSTER} pg ls -f json | jq -c \"${query}\")"},{"line_number":125,"context_line":"    #Then we check, if we have some critical statuses like DOWN or STALE in the rest of the list."},{"line_number":126,"context_line":"    current_pg_state\u003d$(jq -c \"${check_for_critical_statuses}\" \u003c\u003c\u003c \"${pgs_state}\")"}],"source_content_type":"text/x-smarty","patch_set":9,"id":"7f6b1bfe_c0792f30","line":123,"updated":"2020-10-13 20:44:41.000000000","message":"need space after #","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":122,"context_line":"  while [[ $pgs_ready -lt 3 \u0026\u0026 $iterations_to_wait -gt 0 ]]; do"},{"line_number":123,"context_line":"    #First we are filtering out all pgs which are active+clean"},{"line_number":124,"context_line":"    pgs_state\u003d$(ceph --cluster ${CLUSTER} pg ls -f json | jq -c \"${query}\")"},{"line_number":125,"context_line":"    #Then we check, if we have some critical statuses like DOWN or STALE in the rest of the list."},{"line_number":126,"context_line":"    current_pg_state\u003d$(jq -c \"${check_for_critical_statuses}\" \u003c\u003c\u003c \"${pgs_state}\")"},{"line_number":127,"context_line":"    #If we do (current_pg_state is not empty), we should abort the execution and provide log information"},{"line_number":128,"context_line":"    if [[ \"$current_pg_state\" ]]; then"}],"source_content_type":"text/x-smarty","patch_set":9,"id":"7f6b1bfe_40935f50","line":125,"updated":"2020-10-13 20:44:41.000000000","message":"same issue. need space after #","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":124,"context_line":"    pgs_state\u003d$(ceph --cluster ${CLUSTER} pg ls -f json | jq -c \"${query}\")"},{"line_number":125,"context_line":"    #Then we check, if we have some critical statuses like DOWN or STALE in the rest of the list."},{"line_number":126,"context_line":"    current_pg_state\u003d$(jq -c \"${check_for_critical_statuses}\" \u003c\u003c\u003c \"${pgs_state}\")"},{"line_number":127,"context_line":"    #If we do (current_pg_state is not empty), we should abort the execution and provide log information"},{"line_number":128,"context_line":"    if [[ \"$current_pg_state\" ]]; then"},{"line_number":129,"context_line":"        # If inactive PGs aren\u0027t peering, fail"},{"line_number":130,"context_line":"        echo \"Failure, found inactive PGs that aren\u0027t peering\""}],"source_content_type":"text/x-smarty","patch_set":9,"id":"7f6b1bfe_a098736a","line":127,"updated":"2020-10-13 20:44:41.000000000","message":"same issue. need space after #","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":131,"context_line":"        echo \"Please check the log below to fix the PGs issue: $current_pg_state\""},{"line_number":132,"context_line":"        exit 1"},{"line_number":133,"context_line":"    fi"},{"line_number":134,"context_line":"    #If we dont have critical statuses, maybe we do have acceptable?"},{"line_number":135,"context_line":"    current_pg_state\u003d$(jq -c \"${check_for_acceptable_statuses}\" \u003c\u003c\u003c \"${pgs_state}\")"},{"line_number":136,"context_line":"    if [[ \"$current_pg_state\" ]]; then"},{"line_number":137,"context_line":"        echo \"Not all PGs are in active+clean state, yet. We will wait next $(( iterations_to_wait * seconds_to_sleep )) seconds.\""}],"source_content_type":"text/x-smarty","patch_set":9,"id":"7f6b1bfe_e03d4b2d","line":134,"range":{"start_line":134,"start_character":11,"end_line":134,"end_character":16},"updated":"2020-10-13 20:44:41.000000000","message":"don\u0027t","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":131,"context_line":"        echo \"Please check the log below to fix the PGs issue: $current_pg_state\""},{"line_number":132,"context_line":"        exit 1"},{"line_number":133,"context_line":"    fi"},{"line_number":134,"context_line":"    #If we dont have critical statuses, maybe we do have acceptable?"},{"line_number":135,"context_line":"    current_pg_state\u003d$(jq -c \"${check_for_acceptable_statuses}\" \u003c\u003c\u003c \"${pgs_state}\")"},{"line_number":136,"context_line":"    if [[ \"$current_pg_state\" ]]; then"},{"line_number":137,"context_line":"        echo \"Not all PGs are in active+clean state, yet. We will wait next $(( iterations_to_wait * seconds_to_sleep )) seconds.\""}],"source_content_type":"text/x-smarty","patch_set":9,"id":"7f6b1bfe_402fdff5","line":134,"range":{"start_line":134,"start_character":5,"end_line":134,"end_character":6},"updated":"2020-10-13 20:44:41.000000000","message":"same issue. need space after #","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"change_message_id":"da07140d0b534637f189daec40e8dea3e50be3d7","unresolved":false,"context_lines":[{"line_number":120,"context_line":""},{"line_number":121,"context_line":"  # Loop until all pgs are active or some of them are in one of acceptable states"},{"line_number":122,"context_line":"  while [[ $pgs_ready -lt 3 \u0026\u0026 $iterations_to_wait -gt 0 ]]; do"},{"line_number":123,"context_line":"    # First we are filtering out all pgs which are active+clean"},{"line_number":124,"context_line":"    pgs_state\u003d$(ceph --cluster ${CLUSTER} pg ls -f json | jq -c \"${query}\")"},{"line_number":125,"context_line":"    # Then we check, if we have some critical statuses like DOWN or STALE in the rest of the list."},{"line_number":126,"context_line":"    current_pg_state\u003d$(jq -c \"${check_for_critical_statuses}\" \u003c\u003c\u003c \"${pgs_state}\")"}],"source_content_type":"text/x-smarty","patch_set":10,"id":"7f6b1bfe_53e85b15","line":123,"range":{"start_line":123,"start_character":51,"end_line":123,"end_character":63},"updated":"2020-10-13 22:02:47.000000000","message":"The query only filters out active, not active+clean. I believe this is correct behavior, but this comment has me questioning if that is the intention.","commit_id":"b151ed1968d22606c1f6a9d82d5d0c8cfd96343f"},{"author":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"change_message_id":"da07140d0b534637f189daec40e8dea3e50be3d7","unresolved":false,"context_lines":[{"line_number":134,"context_line":"    # If we don\u0027t have critical statuses, maybe we do have acceptable?"},{"line_number":135,"context_line":"    current_pg_state\u003d$(jq -c \"${check_for_acceptable_statuses}\" \u003c\u003c\u003c \"${pgs_state}\")"},{"line_number":136,"context_line":"    if [[ \"$current_pg_state\" ]]; then"},{"line_number":137,"context_line":"        echo \"Not all PGs are in active+clean state, yet. We will wait next $(( iterations_to_wait * seconds_to_sleep )) seconds.\""},{"line_number":138,"context_line":"        echo $current_pg_state"},{"line_number":139,"context_line":"        (( iterations_to_wait-\u003d1 ))"},{"line_number":140,"context_line":"        pgs_ready\u003d0"}],"source_content_type":"text/x-smarty","patch_set":10,"id":"7f6b1bfe_f3e2472f","line":137,"range":{"start_line":137,"start_character":33,"end_line":137,"end_character":45},"updated":"2020-10-13 22:02:47.000000000","message":"Same as above. I believe we only care about \"active\" here, which is what the query is filtering.","commit_id":"b151ed1968d22606c1f6a9d82d5d0c8cfd96343f"},{"author":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"change_message_id":"da07140d0b534637f189daec40e8dea3e50be3d7","unresolved":false,"context_lines":[{"line_number":140,"context_line":"        pgs_ready\u003d0"},{"line_number":141,"context_line":"        sleep $seconds_to_sleep"},{"line_number":142,"context_line":"    else"},{"line_number":143,"context_line":"    # At this point we are sure that all our pgs are active+clean. Or (see the note above) some of them are in a new state"},{"line_number":144,"context_line":"    # We will check this three times."},{"line_number":145,"context_line":"        (( pgs_ready+\u003d1 ))"},{"line_number":146,"context_line":"        sleep $seconds_to_sleep"}],"source_content_type":"text/x-smarty","patch_set":10,"id":"7f6b1bfe_d372ab7c","line":143,"range":{"start_line":143,"start_character":53,"end_line":143,"end_character":65},"updated":"2020-10-13 22:02:47.000000000","message":"active","commit_id":"b151ed1968d22606c1f6a9d82d5d0c8cfd96343f"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"d9c9a994dc533c2cf81d0befd6b40ff4a83acac5","unresolved":true,"context_lines":[{"line_number":36,"context_line":"# false negative alarm (which could be triggered by the function"},{"line_number":37,"context_line":"# wait_for_pgs() below, we should wait until the autoscaling process finishes."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"# First we will check, if we have autoscaler module enabled"},{"line_number":40,"context_line":"  echo \"Checking autoscaler status...\""},{"line_number":41,"context_line":"  autoscaler_is_presented\u003d$(ceph mgr module ls -f json | jq -c \u0027.[\"enabled_modules\"] | map_values(. | contains(\"pg_autoscaler\")) | any\u0027)"},{"line_number":42,"context_line":"  if [[ \"$autoscaler_is_presented\" \u003d\u003d true ]]; then"}],"source_content_type":"text/x-smarty","patch_set":12,"id":"657dec3e_4a18809c","line":39,"range":{"start_line":39,"start_character":0,"end_line":39,"end_character":3},"updated":"2020-11-24 00:07:06.000000000","message":"inconsistent indentation","commit_id":"7adea987907239529b6b3520dd882f9942158254"},{"author":{"_account_id":8898,"name":"Chris Wedgwood","email":"cw@f00f.org","username":"anticw"},"change_message_id":"d9c9a994dc533c2cf81d0befd6b40ff4a83acac5","unresolved":true,"context_lines":[{"line_number":47,"context_line":"      scaling_in_progress\u003d$(ceph osd pool autoscale-status -f json | jq -c \u0027. | map(.would_adjust and (.pg_autoscale_mode \u003d\u003d \"on\")) | any\u0027)"},{"line_number":48,"context_line":"      if [[ \"$scaling_in_progress\" \u003d\u003d true ]]; then"},{"line_number":49,"context_line":"        echo \"Autoscaling in progress. Sleeping $step seconds (total time to wait is $time_to_wait)...\""},{"line_number":50,"context_line":"        sleep $step"},{"line_number":51,"context_line":"        time_to_wait\u003d$(($time_to_wait-$step))"},{"line_number":52,"context_line":"      fi"},{"line_number":53,"context_line":"    done"}],"source_content_type":"text/x-smarty","patch_set":12,"id":"c111bb81_77df7343","line":50,"range":{"start_line":50,"start_character":14,"end_line":50,"end_character":19},"updated":"2020-11-24 00:07:06.000000000","message":"\"\"","commit_id":"7adea987907239529b6b3520dd882f9942158254"}],"ceph-client/values.yaml":[{"author":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"change_message_id":"73be5d54ce36f7017f656706e7aedf34488fd44c","unresolved":false,"context_lines":[{"line_number":278,"context_line":"      - failed_repair"},{"line_number":279,"context_line":"      - laggy"},{"line_number":280,"context_line":"    pg_acceptable_states:"},{"line_number":281,"context_line":"    # List of critical PGs states"},{"line_number":282,"context_line":"      - active"},{"line_number":283,"context_line":"      - creating"},{"line_number":284,"context_line":"      - premerge"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9f560f44_270f2f89","line":281,"range":{"start_line":281,"start_character":14,"end_line":281,"end_character":22},"updated":"2020-10-01 15:51:19.000000000","message":"acceptable","commit_id":"b6c8b2ec914c758eef565d4df32d1e91d33c0580"},{"author":{"_account_id":32433,"name":"Vladimir Sigunov","email":"vladimir.sigunov@att.com","username":"vs422h"},"change_message_id":"3de56e56477d78bee328d6893336bd459cd0f4ea","unresolved":false,"context_lines":[{"line_number":278,"context_line":"      - failed_repair"},{"line_number":279,"context_line":"      - laggy"},{"line_number":280,"context_line":"    pg_acceptable_states:"},{"line_number":281,"context_line":"    # List of critical PGs states"},{"line_number":282,"context_line":"      - active"},{"line_number":283,"context_line":"      - creating"},{"line_number":284,"context_line":"      - premerge"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9f560f44_f87f9266","line":281,"range":{"start_line":281,"start_character":14,"end_line":281,"end_character":22},"in_reply_to":"9f560f44_270f2f89","updated":"2020-10-01 17:24:43.000000000","message":"Fixed. Thanks","commit_id":"b6c8b2ec914c758eef565d4df32d1e91d33c0580"},{"author":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"change_message_id":"73be5d54ce36f7017f656706e7aedf34488fd44c","unresolved":false,"context_lines":[{"line_number":282,"context_line":"      - active"},{"line_number":283,"context_line":"      - creating"},{"line_number":284,"context_line":"      - premerge"},{"line_number":285,"context_line":"      - peer"},{"line_number":286,"context_line":"      - recovering"},{"line_number":287,"context_line":"      - backfill_wait"},{"line_number":288,"context_line":"      - remapped"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9f560f44_c74bd3ae","line":285,"range":{"start_line":285,"start_character":8,"end_line":285,"end_character":12},"updated":"2020-10-01 15:51:19.000000000","message":"This could be \u0027peering\u0027 or \u0027peered\u0027, but both of those indicate inactive PGs and probably shouldn\u0027t be considered acceptable.","commit_id":"b6c8b2ec914c758eef565d4df32d1e91d33c0580"},{"author":{"_account_id":32433,"name":"Vladimir Sigunov","email":"vladimir.sigunov@att.com","username":"vs422h"},"change_message_id":"f26ea1884ec824504f5862b7629dca81aa51688b","unresolved":false,"context_lines":[{"line_number":282,"context_line":"      - active"},{"line_number":283,"context_line":"      - creating"},{"line_number":284,"context_line":"      - premerge"},{"line_number":285,"context_line":"      - peer"},{"line_number":286,"context_line":"      - recovering"},{"line_number":287,"context_line":"      - backfill_wait"},{"line_number":288,"context_line":"      - remapped"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9f560f44_381e2a5f","line":285,"range":{"start_line":285,"start_character":8,"end_line":285,"end_character":12},"in_reply_to":"9f560f44_c74bd3ae","updated":"2020-10-01 17:22:52.000000000","message":"Correct, both are checking. And they are absolutely acceptable in case of re-balancing. Maybe I should add some additional checks.","commit_id":"b6c8b2ec914c758eef565d4df32d1e91d33c0580"},{"author":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"change_message_id":"73be5d54ce36f7017f656706e7aedf34488fd44c","unresolved":false,"context_lines":[{"line_number":287,"context_line":"      - backfill_wait"},{"line_number":288,"context_line":"      - remapped"},{"line_number":289,"context_line":"      - backfilling"},{"line_number":290,"context_line":"      - activating"},{"line_number":291,"context_line":"      - wait"},{"line_number":292,"context_line":"# End of changes"},{"line_number":293,"context_line":"  pool:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9f560f44_87843bb4","line":290,"range":{"start_line":290,"start_character":8,"end_line":290,"end_character":18},"updated":"2020-10-01 15:51:19.000000000","message":"\u0027Activating\u0027 also indicates that a PG is inactive. I wonder if there should be a third category of states that are acceptable temporarily but become critical after a certain amount of time. A PG that is activating, peering, or peered should be on its way to becoming active, but it isn\u0027t there yet. If it doesn\u0027t leave that state it should become critical.","commit_id":"b6c8b2ec914c758eef565d4df32d1e91d33c0580"},{"author":{"_account_id":32433,"name":"Vladimir Sigunov","email":"vladimir.sigunov@att.com","username":"vs422h"},"change_message_id":"f26ea1884ec824504f5862b7629dca81aa51688b","unresolved":false,"context_lines":[{"line_number":287,"context_line":"      - backfill_wait"},{"line_number":288,"context_line":"      - remapped"},{"line_number":289,"context_line":"      - backfilling"},{"line_number":290,"context_line":"      - activating"},{"line_number":291,"context_line":"      - wait"},{"line_number":292,"context_line":"# End of changes"},{"line_number":293,"context_line":"  pool:"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"9f560f44_9843f63f","line":290,"range":{"start_line":290,"start_character":8,"end_line":290,"end_character":18},"in_reply_to":"9f560f44_87843bb4","updated":"2020-10-01 17:22:52.000000000","message":"I agree about third class of states (see my reply above)","commit_id":"b6c8b2ec914c758eef565d4df32d1e91d33c0580"},{"author":{"_account_id":18511,"name":"Brian Wickersham","email":"bkw86@bellsouth.net","username":"bw6938"},"change_message_id":"806845fd1064e41c3f12fec02557cf60b564d1ac","unresolved":false,"context_lines":[{"line_number":261,"context_line":"      unset: \"\""},{"line_number":262,"context_line":"# This section describes different ceph placement group statuses."},{"line_number":263,"context_line":"# Some of them could be mentioned as critical and must trigger an error"},{"line_number":264,"context_line":"# and abort of the deployment because the infrastucture is in unrecoverable"},{"line_number":265,"context_line":"# error state, while the second group should allow the latter deployment"},{"line_number":266,"context_line":"# primaraly because these states appear with autoscaler on and these"},{"line_number":267,"context_line":"# states do not affect the overall ceph performance"}],"source_content_type":"text/x-yaml","patch_set":9,"id":"7f6b1bfe_2048e3ca","line":264,"range":{"start_line":264,"start_character":12,"end_line":264,"end_character":14},"updated":"2020-10-13 20:44:41.000000000","message":"delete","commit_id":"aba1f982f1d0f4e847f6ce4387b8a39958fb2397"},{"author":{"_account_id":29974,"name":"Stephen Taylor","email":"stephen.taylor.1@att.com","username":"st053q"},"change_message_id":"da07140d0b534637f189daec40e8dea3e50be3d7","unresolved":false,"context_lines":[{"line_number":268,"context_line":"    pg_critical_states:"},{"line_number":269,"context_line":"    # List of critical PGs states"},{"line_number":270,"context_line":"      - down"},{"line_number":271,"context_line":"      - activating"},{"line_number":272,"context_line":"      - creating"},{"line_number":273,"context_line":"      - peer"},{"line_number":274,"context_line":"      - recovery_unfound"},{"line_number":275,"context_line":"      - backfill_unfound"},{"line_number":276,"context_line":"      - incomplete"}],"source_content_type":"text/x-yaml","patch_set":10,"id":"7f6b1bfe_f39a476c","line":273,"range":{"start_line":271,"start_character":0,"end_line":273,"end_character":12},"updated":"2020-10-13 22:02:47.000000000","message":"\"Activating,\" \"creating,\" and \"peering\" aren\u0027t critical or acceptable states. They should be temporary, and PGs should leave these states and become active relatively quickly. If they don\u0027t, then these become critical states because the PG is stuck inactive and can\u0027t serve client I/O requests.\n\nIt seems like the logic here will simply fail a deployment if any of these states is encountered.","commit_id":"b151ed1968d22606c1f6a9d82d5d0c8cfd96343f"}]}
