[CLOCK IN] Dispatch duplicado da Pipeline Hashes: Resources unavailable
Description
-
Issue Jira Produção: https://jiraproducao.totvs.com.br/browse/IDEIA-3343
-
Reporter: TOTVS IDEIA
-
Creator: Marcos Henrique Fernandes Marcone
-
Formulário de origem: Abertura de issue para Plataforma Carol
-
Formulário preenchido por: marcos.marcone@totvs.com.br
-
Informe a sua área de atuação na TOTVS: PNRH - CLOCK IN
-
Ambiente impactado: Produção
-
Fase/estágio: Já estamos em PRODUÇÃO
-
Informe o assunto a ser direcionado: Quero reportar um tema que não consta em nenhuma das opções anteriores
-
Informe a Org relacionada: clockin
-
Informe o tenant/ambiente relacionado: clockinunif
-
Ciente de que, caso precise trazer upload de anexos, ele deverá acontecer na issue criada no JIRA Produção.: Estou ciente que o envio destas evidências será realizado diretamente na issue criada no JIRA PRODUÇÃO.
-
Informe a prioridade da sua issue: ALTA: o tema gera interrupção no funcionamento da aplicação, mas não provoca impacto financeiro direto. Ex.: telas de erro de programação, exceções no sistema.
-
Sendo prioridade CRÍTICA, relate a justificativa:
-
Título - Resumo: Dispatch duplicado da Pipeline Hashes: Resources unavailable
-
Descreva o seu problema:
Cenários Identificados
1. Indisponibilidade de Recursos e Latência no Dispatch
Durante a fase de persistência dos dados retornados após a execução de uma pipeline, a plataforma tem retornado intermitentemente o erro:
Platform resources currently unavailable, a new attempt will be made again automatically
-
Impacto: Este erro força tentativas automáticas que estendem significativamente a duração da task, causando atrasos na disponibilização dos dados para os clientes (vide evidência
platform_resources_currently_unavailable.jpg).
2. Validação Redundante Pós-Conclusão (Job already finished)
Observou-se um comportamento onde, após o encerramento do job de dispatch, a pipeline realiza uma nova validação de dados após um longo período de inatividade.
-
Comportamento: A pipeline tenta retomar a execução, mas é interrompida e apresenta o log:
Job already finished!. -
Evidência: Conforme a imagem
nova_validacao_apos_a_conclusao_da task.jpg, a task permanece em um estado ambíguo de processamento mesmo após a conclusão real do job.
Riscos à Integridade dos Dados
Impactos
Este comportamento é perigoso para pipelines críticas como a clockinrecords, pois pode provocar a desatualização de dados:
-
O maior risco reside no atraso do dispatch de uma task antiga. Se o dispatch da Task A (mais antiga) ocorrer após o dispatch da Task B (mais recente) devido a esses retries/atrasos, dados defasados podem sobrepor informações atualizadas, gerando dados desatualizados no ambiente de produção.
Evidências Anexadas
-
Erro de indisponibilidade de recursos e o início do looping de tentativas:
-
Tentativa de re-execução com a mensagem "Job already finished!".
-
Exemplos de Tasks:
-
Platform resources currently unavailable: https://clockin.carol.ai/clockinunif/carol-ui/tasks/activity/65f7fadb-3b12-47e8-846e-c8300e4bf997
-
Nova validação após a conclusão do dispatch: https://clockin.carol.ai/clockinunif/carol-ui/tasks/activity/c341b888-f5c4-4c95-b8ee-1cf2c860d9f6
-