Este tópico descreve o que é um loop de dependência de nó, por que ele ocorre e como resolvê-lo.
O que é um loop de dependência de nó?
Um loop de dependência de nó ocorre quando um nó upstream também depende de um de seus próprios nós downstream. Essa situação cria uma dependência circular que impede o agendamento automático de acionar os nós envolvidos. Em ambientes de produção, o DataWorks dispara automaticamente um alerta ao detectar esse tipo de loop. Para mais informações, consulte Monitoring and alerts for node dependency loops.
Causas e soluções
Uma dependência circular se forma quando um nó upstream também depende de um de seus nós downstream. Analise seu fluxo de trabalho para identificar e remover essa dependência.
Por exemplo, um nó downstream pode precisar processar dados que um nó upstream produziu no ciclo de agendamento anterior. Se o nó downstream for configurado incorretamente para depender do nó upstream do mesmo ciclo de agendamento, isso cria um loop de dependência de nó. Para resolver, reconfigure a dependência como entre ciclos, fazendo com que o nó downstream dependa da saída do ciclo de agendamento anterior.
Exemplo: No cenário ilustrado na figura a seguir, a análise automática de dependências cria um loop se o nó upstream A consultar dados da Tabela C para gerar a saída da Tabela A, o nó downstream B processar dados da Tabela A e gravar na Tabela B e, em seguida, o nó C processar dados da Tabela B e gravar novamente na Tabela C.
Solução: Analise seu fluxo de trabalho e elimine a dependência circular. No exemplo apresentado, caso sua lógica de negócio exija que o nó A utilize dados produzidos pelo nó C, configure uma dependência entre ciclos. Isso permite que o nó A dependa da saída do nó C referente ao ciclo de agendamento anterior, quebrando assim o loop.

Monitoramento e alertas para loops de dependência de nó
Para garantir que as tarefas agendadas gerem instâncias e sejam executadas conforme o esperado, o DataWorks utiliza regras integradas para verificar periodicamente a existência de problemas. Ao detectar um loop de dependência de nó, o sistema envia automaticamente um alerta. Caso receba esse tipo de notificação, resolva a questão com urgência.
O DataWorks verifica o status das tarefas agendadas diariamente às 09:00, 12:00, 16:00, 20:00 e 22:00. Se houver alguma exceção, o sistema dispara um alerta automaticamente. A verificação não cobre exceções ocorridas nos 10 minutos anteriores ao horário da varredura; essas são incluídas no próximo ciclo de verificação.
O alerta de loop de dependência de nó é uma regra integrada e não requer criação manual. Por padrão, as notificações são enviadas ao proprietário do nó por mensagem de texto e e-mail. Altere os destinatários dessa regra global na página Rule Management. Para mais detalhes, consulte rule management.