Uploaded image for project: 'MariaDB Connector/J'
  1. MariaDB Connector/J
  2. CONJ-1018

Unspecific errors occur in some installations

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Incomplete
    • 3.0.5, 3.0.8
    • N/A
    • None
    • None
    • Server: Standalone 10.5.16 (standalone) on SUSE Linux Enterprise Server 12, or original docker image (10.5.2)
      Client: Spring Boot 2.7.4, Java 17, docker image based on Alpine Linux

    Description

      At the moment I have no further idea how to get closer to the problem. That's why I'm asking here for more ideas.

      I have described the problem on Zulip https://mariadb.zulipchat.com/#narrow/stream/118759-general/topic/Connector.2FJ.203.2E0.2E5.20-.20Got.20an.20error.20reading.20communication.20packe/near/304664479

      Repeated:

      After updating the JDBC driver from 2.7.5 to 3.0.5, I see a problem when updating a simple join table that I unfortunately cannot reproduce locally and on test stages.

      The error code on the client side is SQLSTATE(08000), ErrorCode(1220)

      Client side:

      {{"org.hibernate.engine.jdbc.batch.internal.BatchingBatch","message":"HHH000315: Exception executing batch [java.sql.BatchUpdateException: java.sql.BatchUpdateException: java.sql.SQLNonTransientConnectionException: (conn=167) Socket error], SQL: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)","context":"default"
      }}

      root cause:

      Caused by: java.sql.SQLNonTransientConnectionException: (conn=167) Socket error
      at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:291)
      at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:357)
      at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:842)
      at org.mariadb.jdbc.client.impl.StandardClient.readResults(StandardClient.java:758)
      at org.mariadb.jdbc.client.impl.StandardClient.readResponse(StandardClient.java:677)
      at org.mariadb.jdbc.client.impl.StandardClient.executePipeline(StandardClient.java:554)
      ... 127 common frames omitted
      Caused by: java.net.SocketException: Connection reset
      at java.base/java.net.SocketInputStream.read(Unknown Source)
      at java.base/java.net.SocketInputStream.read(Unknown Source)
      at java.base/java.io.FilterInputStream.read(Unknown Source)
      at org.mariadb.jdbc.client.socket.impl.ReadAheadBufferedStream.fillingBuffer(ReadAheadBufferedStream.java:93)
      at org.mariadb.jdbc.client.socket.impl.ReadAheadBufferedStream.read(ReadAheadBufferedStream.java:66)
      at org.mariadb.jdbc.client.socket.impl.PacketReader.readPacket(PacketReader.java:76)
      at org.mariadb.jdbc.message.client.PreparePacket.readPacket(PreparePacket.java:63)
      at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:819)
      ... 130 common frames omitted
      server side:
      [Warning] Aborted connection 167 to db: 'fis' user: 'fis' host: '172.31.148.80' (Got an error reading communication packets)

      And today again a problem with the Maria JDBC Driver 3.0.8. Another app, another environment. So far I haven't been able to reproduce this error with a different environment either. The driver was released this year, but I'm surprised that there haven't been any problems with it so far.

      Attachments

        Activity

          diego dupin Diego Dupin added a comment -

          There is one difference between 2.x and 3.x driver about batch : option `useBulkStmts` default now to true.
          This means connector use a protocol dedicated for batch that is way faster than 2.7 implementation.

          Could you indicate the server server ? There has been some issue with BULK commands a few years before, but all know issues are now resulved since some time if you are not using some old server version.

          diego dupin Diego Dupin added a comment - There is one difference between 2.x and 3.x driver about batch : option `useBulkStmts` default now to true. This means connector use a protocol dedicated for batch that is way faster than 2.7 implementation. Could you indicate the server server ? There has been some issue with BULK commands a few years before, but all know issues are now resulved since some time if you are not using some old server version.

          @Diego Depin server versions: standalone 10.5.16 and docker image is 10.5.2

          I don't think it's the server. If I start the app image in my local environment and connect to the original server, the usecase works.

          torsten.liermann Torsten Liermann added a comment - @Diego Depin server versions: standalone 10.5.16 and docker image is 10.5.2 I don't think it's the server. If I start the app image in my local environment and connect to the original server, the usecase works.

          I updated the server versions. What feedback is still expected?

          torsten.liermann Torsten Liermann added a comment - I updated the server versions. What feedback is still expected?
          torsten.liermann Torsten Liermann added a comment - - edited

          With the parameter useBulkStmts=true in the jdbc url, the error does not occur with a Maria Database Server version 10.5.16.
          The error cannot be provoked in a simulation of the problem using a test container (testcontainers.org) and a MariaDB Docker Image 10.5.16.

          The error cannot be provoked with a unit test against the "faulty" database either. So the cause must be more complex than just the useBulkStmts=true parameter.

          This is the unit test log output with useBulkStmts=true:

          Hibernate: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)
          Hibernate: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)
          Hibernate: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)
          Hibernate: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)
          2022-11-01 17:45:59.175 DEBUG 16472 --- [           main] o.m.jdbc.client.impl.StandardClient      : execute query: PREPARE insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)
          2022-11-01 17:45:59.176 DEBUG 16472 --- [           main] o.m.jdbc.client.impl.StandardClient      : execute query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)
          2022-11-01 17:45:59.202 DEBUG 16472 --- [           main] o.m.jdbc.client.impl.StandardClient      : execute query: COMMIT
          2022-11-01 17:45:59.211 DEBUG 16472 --- [           main] o.m.jdbc.client.impl.StandardClient      : execute query: set autocommit=1
          2022-11-01 17:45:59.219 DEBUG 16472 --- [           main] o.mariadb.jdbc.message.server.OkPacket   : System variable change:  autocommit = ON
          

          torsten.liermann Torsten Liermann added a comment - - edited With the parameter useBulkStmts=true in the jdbc url, the error does not occur with a Maria Database Server version 10.5.16. The error cannot be provoked in a simulation of the problem using a test container (testcontainers.org) and a MariaDB Docker Image 10.5.16. The error cannot be provoked with a unit test against the "faulty" database either. So the cause must be more complex than just the useBulkStmts=true parameter. This is the unit test log output with useBulkStmts=true: Hibernate: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?) Hibernate: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?) Hibernate: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?) Hibernate: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?) 2022-11-01 17:45:59.175 DEBUG 16472 --- [ main] o.m.jdbc.client.impl.StandardClient : execute query: PREPARE insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?) 2022-11-01 17:45:59.176 DEBUG 16472 --- [ main] o.m.jdbc.client.impl.StandardClient : execute query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?) 2022-11-01 17:45:59.202 DEBUG 16472 --- [ main] o.m.jdbc.client.impl.StandardClient : execute query: COMMIT 2022-11-01 17:45:59.211 DEBUG 16472 --- [ main] o.m.jdbc.client.impl.StandardClient : execute query: set autocommit=1 2022-11-01 17:45:59.219 DEBUG 16472 --- [ main] o.mariadb.jdbc.message.server.OkPacket : System variable change: autocommit = ON
          diego dupin Diego Dupin added a comment -

          I've not been able to reproduce bug like this, and without further idea, i'm beeing stuck.
          If you face this problem again, could you send server logs corresponding to the problem ?

          diego dupin Diego Dupin added a comment - I've not been able to reproduce bug like this, and without further idea, i'm beeing stuck. If you face this problem again, could you send server logs corresponding to the problem ?
          torsten.liermann Torsten Liermann added a comment - - edited

          Here are the logs for useBulkStmt=false and useBulkStmt=true in case of an error. Repeating the other error case is not easily possible due to the complexity of the ops dependencies.

          Server version is 10.5.16, stand alone installation on SUSE Linux Enterprise Server 12 SP5 (x86_64) - kernel version 5.3.18-150300.59.87-default

          useBulkStmt=false

          query: select glaeubiger0_.id as id1_0_0_, glaeubiger0_.bereich as bereich2_0_0_, glaeubiger0_.role as role3_0_0_ from glaeubiger_bereich glaeubiger0_ where glaeubiger0_.id=?"
          query: delete from glaeubiger_gemeinde_bereich_relation where gemeinde_id=?",
          query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)",
          query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)",
          query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)",
          query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)",
          query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)",
          query: COMMIT
          query: set autocommit=1
          System variable change: autocommit = ON
          query: set autocommit=0
          System variable change: autocommit = OFF
          query: set autocommit=1
          System variable change: autocommit = ON

          —

          useBulkStmt=true

          query: select glaeubiger0_.id as id1_0_0_, glaeubiger0_.bereich as bereich2_0_0_, glaeubiger0_.role as role3_0_0_ from glaeubiger_bereich glaeubiger0_ where glaeubiger0_.id=?
          query: delete from glaeubiger_gemeinde_bereich_relation where gemeinde_id=?",
          query: PREPARE insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)",
          query: PREPARE insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)",
          query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)",

          "message":"HikariPool-2 - Connection org.mariadb.jdbc.Connection@48855791 marked as broken because of SQLSTATE(08000), ErrorCode(-1)","context":"default","exception":"java.sql.BatchUpdateException: (conn=2081285) Socket error
          at org.mariadb.jdbc.export.ExceptionFactory.createBatchUpdate(ExceptionFactory.java:181)
          at org.mariadb.jdbc.ClientPreparedStatement.executeBatchBulk(ClientPreparedStatement.java:179)
          at org.mariadb.jdbc.ClientPreparedStatement.executeInternalPreparedBatch(ClientPreparedStatement.java:115)
          at org.mariadb.jdbc.ClientPreparedStatement.executeBatch(ClientPreparedStatement.java:466)
          at com.zaxxer.hikari.pool.ProxyStatement.executeBatch(ProxyStatement.java:127)
          at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeBatch(HikariProxyPreparedStatement.java)
          at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.performExecution(BatchingBatch.java:125)
          at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.doExecuteBatch(BatchingBatch.java:110)
          at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.execute(AbstractBatchImpl.java:153)
          at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.executeBatch(JdbcCoordinatorImpl.java:198)
          at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:633)
          at org.hibernate.engine.spi.ActionQueue.lambda$executeActions$1(ActionQueue.java:478)
          at java.base/java.util.LinkedHashMap.forEach(Unknown Source)
          at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:475)
          at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:344)
          at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:40)
          at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107)
          at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1407)
          at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1394)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
          at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
          at java.base/java.lang.reflect.Method.invoke(Unknown Source)
          at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:311)
          at jdk.proxy2/jdk.proxy2.$Proxy139.flush(Unknown Source)
          at org.springframework.data.jpa.repository.support.SimpleJpaRepository.flush(SimpleJpaRepository.java:727)
          at org.springframework.data.jpa.repository.support.SimpleJpaRepository.saveAndFlush(SimpleJpaRepository.java:682)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
          at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
          at java.base/java.lang.reflect.Method.invoke(Unknown Source)
          at org.springframework.data.repository.core.support.RepositoryMethodInvoker$RepositoryFragmentMethodInvoker.lambda$new$0(RepositoryMethodInvoker.java:289)
          at org.springframework.data.repository.core.support.RepositoryMethodInvoker.doInvoke(RepositoryMethodInvoker.java:137)
          at org.springframework.data.repository.core.support.RepositoryMethodInvoker.invoke(RepositoryMethodInvoker.java:121)
          at org.springframework.data.repository.core.support.RepositoryComposition$RepositoryFragments.invoke(RepositoryComposition.java:530)
          at org.springframework.data.repository.core.support.RepositoryComposition.invoke(RepositoryComposition.java:286)
          at org.springframework.data.repository.core.support.RepositoryFactorySupport$ImplementationMethodExecutionInterceptor.invoke(RepositoryFactorySupport.java:640)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
          at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.doInvoke(QueryExecutorMethodInterceptor.java:164)
          at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.invoke(QueryExecutorMethodInterceptor.java:139)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
          at org.springframework.data.projection.DefaultMethodInvokingMethodInterceptor.invoke(DefaultMethodInvokingMethodInterceptor.java:81)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
          at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)
          at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388)
          at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
          at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:137)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
          at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:174)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
          at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
          at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215)
          at jdk.proxy2/jdk.proxy2.$Proxy148.saveAndFlush(Unknown Source)
          at de.akdb.bsp.tool.bayern.view.glaeubiger.ConfigGlaeubigerMandantView.savePropagatingExceptions(ConfigGlaeubigerMandantView.java:275)
          at de.akdb.bsp.tool.bayern.view.ConfigView.save(ConfigView.java:35)
          at de.akdb.bsp.tool.bayern.view.ConfigView$$FastClassBySpringCGLIB$$28e3fa97.invoke(<generated>)
          at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)
          at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
          at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
          at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123)
          at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388)
          at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119)
          at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
          at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763)
          at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708)
          at de.akdb.bsp.tool.bayern.view.glaeubiger.ConfigGlaeubigerMandantView$$EnhancerBySpringCGLIB$$6e9ac068.save(<generated>)
          at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
          at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
          at java.base/java.lang.reflect.Method.invoke(Unknown Source)
          at com.sun.el.parser.AstValue.invoke(AstValue.java:234)
          at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297)
          at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:126)
          at javax.faces.event.ActionEvent.processListener(ActionEvent.java:72)
          at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:495)
          at javax.faces.component.UICommand.broadcast(UICommand.java:211)
          at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:847)
          at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1396)
          at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:58)
          at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:76)
          at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177)
          at javax.faces.webapp.FacesServlet.executeLifecyle(FacesServlet.java:707)
          at javax.faces.webapp.FacesServlet.service(FacesServlet.java:451)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
          at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
          at org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:186)
          at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
          at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
          at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
          at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
          at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
          at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96)
          at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
          at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
          at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
          at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
          at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
          at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
          at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
          at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
          at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
          at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:769)
          at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
          at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
          at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
          at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)
          at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789)
          at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
          at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
          at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
          at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
          at java.base/java.lang.Thread.run(Unknown Source)
          Caused by: java.sql.BatchUpdateException: (conn=2081285) Socket error
          at org.mariadb.jdbc.export.ExceptionFactory.createBatchUpdate(ExceptionFactory.java:215)
          at org.mariadb.jdbc.client.impl.StandardClient.executePipeline(StandardClient.java:624)
          at org.mariadb.jdbc.ClientPreparedStatement.executeBatchBulk(ClientPreparedStatement.java:148)
          ... 126 common frames omitted
          Caused by: java.sql.SQLNonTransientConnectionException: (conn=2081285) Socket error
          at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:293)
          at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:359)
          at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:863)
          at org.mariadb.jdbc.client.impl.StandardClient.readResults(StandardClient.java:779)
          at org.mariadb.jdbc.client.impl.StandardClient.readResponse(StandardClient.java:698)
          at org.mariadb.jdbc.client.impl.StandardClient.executePipeline(StandardClient.java:575)
          ... 127 common frames omitted
          Caused by: java.net.SocketException: Connection reset
          at java.base/sun.nio.ch.NioSocketImpl.implRead(Unknown Source)
          at java.base/sun.nio.ch.NioSocketImpl.read(Unknown Source)
          at java.base/sun.nio.ch.NioSocketImpl$1.read(Unknown Source)
          at java.base/java.net.Socket$SocketInputStream.read(Unknown Source)
          at java.base/java.io.BufferedInputStream.fill(Unknown Source)
          at java.base/java.io.BufferedInputStream.read1(Unknown Source)
          at java.base/java.io.BufferedInputStream.read(Unknown Source)
          at org.mariadb.jdbc.client.socket.impl.PacketReader.readPacket(PacketReader.java:76)
          at org.mariadb.jdbc.message.client.PreparePacket.readPacket(PreparePacket.java:63)
          at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:840)
          ... 130 common frames omitted

          torsten.liermann Torsten Liermann added a comment - - edited Here are the logs for useBulkStmt=false and useBulkStmt=true in case of an error. Repeating the other error case is not easily possible due to the complexity of the ops dependencies. Server version is 10.5.16, stand alone installation on SUSE Linux Enterprise Server 12 SP5 (x86_64) - kernel version 5.3.18-150300.59.87-default useBulkStmt=false query: select glaeubiger0_.id as id1_0_0_, glaeubiger0_.bereich as bereich2_0_0_, glaeubiger0_.role as role3_0_0_ from glaeubiger_bereich glaeubiger0_ where glaeubiger0_.id=?" query: delete from glaeubiger_gemeinde_bereich_relation where gemeinde_id=?", query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)", query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)", query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)", query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)", query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)", query: COMMIT query: set autocommit=1 System variable change: autocommit = ON query: set autocommit=0 System variable change: autocommit = OFF query: set autocommit=1 System variable change: autocommit = ON — useBulkStmt=true query: select glaeubiger0_.id as id1_0_0_, glaeubiger0_.bereich as bereich2_0_0_, glaeubiger0_.role as role3_0_0_ from glaeubiger_bereich glaeubiger0_ where glaeubiger0_.id=? query: delete from glaeubiger_gemeinde_bereich_relation where gemeinde_id=?", query: PREPARE insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)", query: PREPARE insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)", query: insert into glaeubiger_gemeinde_bereich_relation (gemeinde_id, bereich_id) values (?, ?)", "message":"HikariPool-2 - Connection org.mariadb.jdbc.Connection@48855791 marked as broken because of SQLSTATE(08000), ErrorCode(-1)","context":"default","exception":"java.sql.BatchUpdateException: (conn=2081285) Socket error at org.mariadb.jdbc.export.ExceptionFactory.createBatchUpdate(ExceptionFactory.java:181) at org.mariadb.jdbc.ClientPreparedStatement.executeBatchBulk(ClientPreparedStatement.java:179) at org.mariadb.jdbc.ClientPreparedStatement.executeInternalPreparedBatch(ClientPreparedStatement.java:115) at org.mariadb.jdbc.ClientPreparedStatement.executeBatch(ClientPreparedStatement.java:466) at com.zaxxer.hikari.pool.ProxyStatement.executeBatch(ProxyStatement.java:127) at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeBatch(HikariProxyPreparedStatement.java) at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.performExecution(BatchingBatch.java:125) at org.hibernate.engine.jdbc.batch.internal.BatchingBatch.doExecuteBatch(BatchingBatch.java:110) at org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.execute(AbstractBatchImpl.java:153) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.executeBatch(JdbcCoordinatorImpl.java:198) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:633) at org.hibernate.engine.spi.ActionQueue.lambda$executeActions$1(ActionQueue.java:478) at java.base/java.util.LinkedHashMap.forEach(Unknown Source) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:475) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:344) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:40) at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1407) at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1394) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:311) at jdk.proxy2/jdk.proxy2.$Proxy139.flush(Unknown Source) at org.springframework.data.jpa.repository.support.SimpleJpaRepository.flush(SimpleJpaRepository.java:727) at org.springframework.data.jpa.repository.support.SimpleJpaRepository.saveAndFlush(SimpleJpaRepository.java:682) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source) at org.springframework.data.repository.core.support.RepositoryMethodInvoker$RepositoryFragmentMethodInvoker.lambda$new$0(RepositoryMethodInvoker.java:289) at org.springframework.data.repository.core.support.RepositoryMethodInvoker.doInvoke(RepositoryMethodInvoker.java:137) at org.springframework.data.repository.core.support.RepositoryMethodInvoker.invoke(RepositoryMethodInvoker.java:121) at org.springframework.data.repository.core.support.RepositoryComposition$RepositoryFragments.invoke(RepositoryComposition.java:530) at org.springframework.data.repository.core.support.RepositoryComposition.invoke(RepositoryComposition.java:286) at org.springframework.data.repository.core.support.RepositoryFactorySupport$ImplementationMethodExecutionInterceptor.invoke(RepositoryFactorySupport.java:640) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.doInvoke(QueryExecutorMethodInterceptor.java:164) at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.invoke(QueryExecutorMethodInterceptor.java:139) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.data.projection.DefaultMethodInvokingMethodInterceptor.invoke(DefaultMethodInvokingMethodInterceptor.java:81) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:137) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:174) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:215) at jdk.proxy2/jdk.proxy2.$Proxy148.saveAndFlush(Unknown Source) at de.akdb.bsp.tool.bayern.view.glaeubiger.ConfigGlaeubigerMandantView.savePropagatingExceptions(ConfigGlaeubigerMandantView.java:275) at de.akdb.bsp.tool.bayern.view.ConfigView.save(ConfigView.java:35) at de.akdb.bsp.tool.bayern.view.ConfigView$$FastClassBySpringCGLIB$$28e3fa97.invoke(<generated>) at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:793) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:123) at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:388) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:119) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:763) at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:708) at de.akdb.bsp.tool.bayern.view.glaeubiger.ConfigGlaeubigerMandantView$$EnhancerBySpringCGLIB$$6e9ac068.save(<generated>) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.base/java.lang.reflect.Method.invoke(Unknown Source) at com.sun.el.parser.AstValue.invoke(AstValue.java:234) at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:297) at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:126) at javax.faces.event.ActionEvent.processListener(ActionEvent.java:72) at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:495) at javax.faces.component.UICommand.broadcast(UICommand.java:211) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:847) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1396) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:58) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:76) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:177) at javax.faces.webapp.FacesServlet.executeLifecyle(FacesServlet.java:707) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:451) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) at org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:186) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) at org.springframework.boot.actuate.metrics.web.servlet.WebMvcMetricsFilter.doFilterInternal(WebMvcMetricsFilter.java:96) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:769) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1789) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Unknown Source) Caused by: java.sql.BatchUpdateException: (conn=2081285) Socket error at org.mariadb.jdbc.export.ExceptionFactory.createBatchUpdate(ExceptionFactory.java:215) at org.mariadb.jdbc.client.impl.StandardClient.executePipeline(StandardClient.java:624) at org.mariadb.jdbc.ClientPreparedStatement.executeBatchBulk(ClientPreparedStatement.java:148) ... 126 common frames omitted Caused by: java.sql.SQLNonTransientConnectionException: (conn=2081285) Socket error at org.mariadb.jdbc.export.ExceptionFactory.createException(ExceptionFactory.java:293) at org.mariadb.jdbc.export.ExceptionFactory.create(ExceptionFactory.java:359) at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:863) at org.mariadb.jdbc.client.impl.StandardClient.readResults(StandardClient.java:779) at org.mariadb.jdbc.client.impl.StandardClient.readResponse(StandardClient.java:698) at org.mariadb.jdbc.client.impl.StandardClient.executePipeline(StandardClient.java:575) ... 127 common frames omitted Caused by: java.net.SocketException: Connection reset at java.base/sun.nio.ch.NioSocketImpl.implRead(Unknown Source) at java.base/sun.nio.ch.NioSocketImpl.read(Unknown Source) at java.base/sun.nio.ch.NioSocketImpl$1.read(Unknown Source) at java.base/java.net.Socket$SocketInputStream.read(Unknown Source) at java.base/java.io.BufferedInputStream.fill(Unknown Source) at java.base/java.io.BufferedInputStream.read1(Unknown Source) at java.base/java.io.BufferedInputStream.read(Unknown Source) at org.mariadb.jdbc.client.socket.impl.PacketReader.readPacket(PacketReader.java:76) at org.mariadb.jdbc.message.client.PreparePacket.readPacket(PreparePacket.java:63) at org.mariadb.jdbc.client.impl.StandardClient.readPacket(StandardClient.java:840) ... 130 common frames omitted
          diego dupin Diego Dupin added a comment -

          Can you have server logs at the same time of this error ?

          diego dupin Diego Dupin added a comment - Can you have server logs at the same time of this error ?

          People

            diego dupin Diego Dupin
            torsten.liermann Torsten Liermann
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.