01. DADOS GERAIS
Produto: | TOTVS Framework
|
---|---|
Linha de Produto: | Linha Logix |
Segmento: | Tecnologia |
Módulo: |
Framework (Linha Logix) - Tecnologia
|
Função: | Rotina de início e término de gatilho do Agendador de Tarefas - JOB0002 |
País: | Brasil |
Ticket: | 22619653 |
Requisito/Story/Issue (informe o requisito relacionado) : | DFWKLOGIX-1716 |
02. SITUAÇÃO/REQUISITO
Durante o processamento de um grupo maior de gatilhos que eram processados pelo Agendador de Tarefas em pequenos intervalos de tempo, dando margem de serem processados quase que de forma paralela e concorrente, aleatoriamente o agendador apresentava falha de Deadlock para uma atualização de registros na tabela JOB_REGISTRO_EXECUCAO.
Apesar de ocorrer esta situação, o Agendador de Tarefas não gerava travamento, nem tampouco quedas, mas apresentava aleatoriamente esta falha no LOG gerado no AppServer onde é executado.
03. SOLUÇÃO
A instrução de atualização de registros da tabela JOB_REGISTRO_EXECUCAO que acusava falha de Deadklock era responsável apenas por ajustar dados de possíveis processamentos de gatilhos perdidos, devido a ocorrência de algum erro que levou a sua interrupção ou até mesmo por ter ocorrido alguma falha de conexão de banco de dados ou reinicialização do Agendador de Tarefas, o que provocaria a falta de finalização de dados de processamentos de gatilhos em andamento. Esta atualização de dados destes possíveis processamentos de gatilhos perdidos passou a ser realizada juntamente com a ação de início de processamento de um gatilho, durante uma transação ativa onde o gatilho em execução está em LOCK, para evitar possíveis concorrências de atualizações de dados de outras tabelas do banco de dados vinculadas a um gatilho do agendador de tarefas ocorra de forma paralela pelo produto. Anteriormente essa atualização ocorria após a ação de finalização de um gatilho.
04. DEMAIS INFORMAÇÕES
Não se aplica.
Disponível a partir do pacote oficial 12.1.2507 ou Framework Fix 12.1.2411(fix02)IMPORTANTE!
05. ASSUNTOS RELACIONADOS