Criei um processo que executa uma verificação para saber se determinados produtos novos já tem movimentação na Logistica para poder liberar o cadastro de alguns parametros no Produto.
Porém, por ter mais de 30 mil produtos para analisar, esse procedimento é abortado pelo Fluig depois de 300 segundos de execução, exibindo os seguintes erros no log.
[com.fluig.monitoring.jschronos.JSChronos] (WebdeskScheduler_Worker-2) CustomizationManagerImpl.invokeFunction.beforeStateEntry executou por 300 segundos
[com.fluig.monitoring.jschronos.JSChronos] (WebdeskScheduler_Worker-2) params: [[Process id = cadastro_produtos_novo, Process Version = 17, Process Current UserId = admin], Thread = WebdeskScheduler_Worker-2, ]
[org.jboss.as.ejb3] (WebdeskScheduler_Worker-2) WFLYEJB0487: Unexpected invocation state 0
[com.arjuna.ats.arjuna] (WebdeskScheduler_Worker-2) ARJUNA012077: Abort called on already aborted atomic action 0:ffff0a0d020d:385314c6:5ca22763:2efc
[org.jboss.as.ejb3.invocation] (WebdeskScheduler_Worker-2) WFLYEJB0034: EJB Invocation failed on component wdk/Workflow for method public abstract java.util.Map com.datasul.technology.webdesk.workflow.business.WorkflowBI.startProcess(java.lang.String,com.datasul.technology.webdesk.workflow.model.ProcessState,java.util.List,java.lang.String,com.datasul.technology.webdesk.foundation.model.Colleague,boolean,java.util.List,java.util.Map,java.util.List,java.lang.Boolean,int) throws java.lang.Exception: javax.ejb.EJBTransactionRolledbackException: Transaction rolled back
[org.jboss.as.ejb3.invocation] (WebdeskScheduler_Worker-2) WFLYEJB0034: EJB Invocation failed on component wdk/WorkflowJobAsync for method public abstract java.lang.Object com.datasul.technology.webdesk.workflow.business.WorkflowJobAsyncBI.runBpmnTimerTask(long,java.lang.String,int,java.lang.String,int,int,int,java.lang.String) throws java.lang.Exception: javax.ejb.EJBTransactionRolledbackException: Transaction rolled back
[com.datasul.technology.webdesk.scheduler.bpmn.BpmnTimerTaskJob] (WebdeskScheduler_Worker-2) Ocorreu um erro executando timer de inÃcio do processo cadastro_produtos_novo
[com.datasul.technology.webdesk.scheduler.bpmn.BpmnTimerTaskJob] (WebdeskScheduler_Worker-2) Transaction rolled back: javax.ejb.EJBTransactionRolledbackException: Transaction rolled back
[com.datasul.technology.webdesk.scheduler.bpmn.BpmnTimerTaskJob] (WebdeskScheduler_Worker-2) Ao executar job cadastro_produtos_novo9_0_Mon Apr 01 11:12:08 GMT-03:00 2019_1191975516
Descobri que no Domain.xml tinha uma tag de Timeout dentro do Datasource do BD, tirei ele, reiniciei o servidor, mas mesmo assim, ainda para a execução após os 300 segundos.
Gostaria de saber se tem algum lugar para configurar esse tempo de execução ou alguma outra forma de fazer essa validação sem cair no problema dos 300 segundos de execução.
Olá Alessandro, 5 minutos é o tempo máximo padrão de uma transação para o wildfly. Existe essa documentação de configuração: http://tdn.totvs.com/x/7QBlDw . Não conheço a parte de Logitica para lhe auxiliar, mas seria bom avaliar uma outra forma de executar a validação consumindo menos tempo.
— Diogo Boegershausen 01 de Apr de 2019Diogo, obrigado pela ajuda, essa documentação irá me ajudar. Vou fazer os testes, se funcionar atualizo o post aqui.
— Alessandro Feitosa 01 de Apr de 2019