Closed tiagoben closed 1 year ago
Boa tarde @marcelo225 só podemos subir para a master quando o ambiente de produção passar a aceitar essa versão. Devemos fazer isso depois dessa data que você citou. Por enquanto pode ir usando esta branch
@tiagoben , tudo bem?
Atualizando esse PR para nosso repositório, e fizemos uns testes, enviando payloads JSON (versão S-1.1) para processamento e deu esses erros, conforme o log abaixo:
javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not execute statement
--
| at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:154) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:188) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1420) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1403) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at sun.reflect.GeneratedMethodAccessor2267.invoke(Unknown Source) ~[na:na]
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_392]
| at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_392]
| at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:311) ~[spring-orm-5.3.13.jar!/:5.3.13]
| at com.sun.proxy.$Proxy179.flush(Unknown Source) ~[na:na]
| at br.jus.tst.esocialjt.negocio.EventoTotalizadorServico.salvar(EventoTotalizadorServico.java:40) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.negocio.EventoTotalizadorServico$FastClassBySpringCGLIB$17bdb10c.invoke(<generated>) ~[classes!/:0.0.1-SNAPSHOT]
| at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:783) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:698) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at br.jus.tst.esocialjt.negocio.EventoTotalizadorServico$EnhancerBySpringCGLIB$a44d4b90.salvar(<generated>) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.negocio.AtualizacaoProcessamentoServico.salvaEventosTotalizadores(AtualizacaoProcessamentoServico.java:98) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.negocio.AtualizacaoProcessamentoServico.lambda$atualizarProcessamentoLote$2(AtualizacaoProcessamentoServico.java:76) ~[classes!/:0.0.1-SNAPSHOT]
| at java.util.ArrayList.forEach(ArrayList.java:1259) ~[na:1.8.0_392]
| at br.jus.tst.esocialjt.negocio.AtualizacaoProcessamentoServico.atualizarProcessamentoLote(AtualizacaoProcessamentoServico.java:64) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.negocio.AtualizacaoProcessamentoServico.atualizarTodosEmProcessamento(AtualizacaoProcessamentoServico.java:41) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.negocio.AtualizacaoProcessamentoServico$FastClassBySpringCGLIB$d464c73b.invoke(<generated>) ~[classes!/:0.0.1-SNAPSHOT]
| at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:689) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at br.jus.tst.esocialjt.negocio.AtualizacaoProcessamentoServico$EnhancerBySpringCGLIB$71ee637d.atualizarTodosEmProcessamento(<generated>) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.auto.tarefas.TarefaAtualizacaoProcessamento.executar(TarefaAtualizacaoProcessamento.java:31) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.auto.tarefas.TarefaAtualizacaoProcessamento$FastClassBySpringCGLIB$b57038d2.invoke(<generated>) ~[classes!/:0.0.1-SNAPSHOT]
| at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:783) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:698) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at br.jus.tst.esocialjt.auto.tarefas.TarefaAtualizacaoProcessamento$EnhancerBySpringCGLIB$cbfceea2.executar(<generated>) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.auto.CicloEnvio.executar(CicloEnvio.java:35) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.auto.CicloEnvio$FastClassBySpringCGLIB$81b29083.invoke(<generated>) ~[classes!/:0.0.1-SNAPSHOT]
| at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:783) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) ~[spring-tx-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:753) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:698) ~[spring-aop-5.3.13.jar!/:5.3.13]
| at br.jus.tst.esocialjt.auto.CicloEnvio$EnhancerBySpringCGLIB$53fbcc55.executar(<generated>) ~[classes!/:0.0.1-SNAPSHOT]
| at br.jus.tst.esocialjt.auto.TimerEnvio.lambda$executar$0(TimerEnvio.java:46) ~[classes!/:0.0.1-SNAPSHOT]
| at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) ~[spring-context-5.3.13.jar!/:5.3.13]
| at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_392]
| at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [na:1.8.0_392]
| at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_392]
| at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [na:1.8.0_392]
| at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_392]
| at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_392]
| at java.lang.Thread.run(Thread.java:750) [na:1.8.0_392]
| Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement
| at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:109) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:37) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:99) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:200) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3381) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3908) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:107) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.engine.spi.ActionQueue.lambda$executeActions$1(ActionQueue.java:478) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at java.util.LinkedHashMap.forEach(LinkedHashMap.java:684) ~[na:1.8.0_392]
| at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:475) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:344) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:40) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1416) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| ... 63 common frames omitted
| Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table "est_evento_totalizador" violates foreign **key constraint "est_evento_totalizador_fk01"
| Detail: Key (txt_nr_recibo_arq_base)=(1.2.0000000000207781687) is not present in table "est_evento".
| at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2674) ~[postgresql-**42.3.1.jar!/:42.3.1]
| at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2364) ~[postgresql-42.3.1.jar!/:42.3.1]
| at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:354) ~[postgresql-42.3.1.jar!/:42.3.1]
| at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:484) ~[postgresql-42.3.1.jar!/:42.3.1]
| at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:404) ~[postgresql-42.3.1.jar!/:42.3.1]
| at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:162) ~[postgresql-42.3.1.jar!/:42.3.1]
| at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:130) ~[postgresql-42.3.1.jar!/:42.3.1]
| at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61) ~[HikariCP-4.0.3.jar!/:na]
| at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java) ~[HikariCP-4.0.3.jar!/:na]
| at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:197) ~[hibernate-core-5.6.1.Final.jar!/:5.6.1.Final]
| ... 74 common frames omitted
Se vc prestar atenção deu erro de chave estrangeira:
Caused by: org.postgresql.util.PSQLException: ERROR: insert or update on table "est_evento_totalizador" violates foreign key constraint "est_evento_totalizador_fk01"
--
| Detail: Key (txt_nr_recibo_arq_base)=(1.2.0000000000207781687) is not present in table "est_evento".
Vi que as tabelas est_evento_totalizador
e est_evento
tem um relacionamento, conforme a image abaixo:
Isso é algum problema pelos payloads estarem na versão S-1.1 ? Precisa fazer algum merge do master para este branch? Teremos que corrigir todos os payloads primeiro ou é bug na aplicação independente disso?
Obrigado!
@tiagoben , continuando sobre o possível erro descrito anteriormente.
Vi que nesta linha da classe AtualizacaoProcessamentoServico.java é setado o número do recibo do eSocial para ser gravado na tabela est_evento
, correto?
Só que, as vezes, esse recibo vem NULL do eSocial por algum motivo nesta linha da mesma classe e quando vai realmente salvar na tabela est_evento_totalizador
, dá a exceção citada no log acima.
Esse trecho não deveria ser tratado também pela aplicação, caso não tenha o número do recibo?
Obrigado!
@tiagoben
O governo implantou a versão 1.2 em produção no dia 20/11/2023.
Vcs realmente tão conseguindo enviar usando esse PR?
Por que no ambiente do teste não tá funcionando esse PR. Acontece o erro descrito pelo @marcelo225 .
Prezados, boa tarde. Agradeço pelo feedback.
Fiz um teste de envio para a produção restrita com todos dados tanto de trabalhadores com e sem vínculo quanto beneficiários e benefícios. Além dos eventos de tabela, enviei dados cadastrais, alterações e dados de remuneração/pagamentos totalizando 17.412 eventos e não ocorreu o erro informado.
Lendo a documentação técnica do eSocial, não deveria acontecer esse caso do recebimento de um evento sem um número de recibo. Imagino que tenha sido alguma eventualidade na transição que causou esta situação. Peço que verifiquem novamente usando a versão mais recente.
@tiagoben , blz? Alguma previsão para mergear essa versão? Ainda estamos trabalhando com a versão S-1.1 e os ambientes de produção restrita já foram atualizadas para nova versão e a de produção vai ser agora (20/11/2023). Obrigado!