Nano Hash - криптовалюты, майнинг, программирование

MySQL Hibernate уже закрыт ОШИБКА после дня без использования

Это приложение Hibernate / Mule с подключением к MySQL.

К моменту запуска приложения запросы выполняются просто отлично. Но через какое-то время, не уверен, если от 12 до 15 часов без запросов, первый запрос после этого времени выбрасывается ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Already closed.. Когда второй запрос выполнен, он работает нормально.

Конфигурация подключения

    <!-- XYZ -->
    <bean name="dataSourceXYZ" class="org.apache.commons.dbcp.BasicDataSource">
        <property name="driverClassName" value="com.mysql.cj.jdbc.Driver" /> 
        <property name="url" value="jdbc:mysql://database:3306/xyz_base?serverTimezone=UTC&amp;verifyServerCertificate=false&amp;useSSL=false&amp;requireSSL=false" />
        <property name="username" value="" />
        <property name="password" value="" />
    </bean>

    <bean id="entityManagerFactoryXYZ"
        class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
        <property name="dataSource" ref="dataSourceXYZ" />
        <property name="persistenceUnitName" value="XYZPU" />
        <property name="packagesToScan" value="com.domain.xyz.entity" />
        <property name="jpaVendorAdapter">
            <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" /> 
        </property>

        <property name="jpaProperties">
         <props>                    
            <prop key="hibernate.dialect">org.hibernate.dialect.MySQL57InnoDBDialect</prop>              
            <prop key="connection.autoReconnect">true</prop>
            <prop key="connection.autoReconnectForPools">true</prop>
            <prop key="connection.is-connection-validation-required">true</prop>    
         </props>
      </property>      

    </bean>

    <bean id="entityManagerXYZ"
        class="org.springframework.orm.jpa.support.SharedEntityManagerBean">
        <property name="entityManagerFactory" ref="entityManagerFactoryXYZ" />
    </bean>

    <bean id="transactionManagerXYZ" class="org.springframework.orm.jpa.JpaTransactionManager">
        <property name="entityManagerFactory" ref="entityManagerFactoryXYZ" />
    </bean>

    <tx:annotation-driven transaction-manager="transactionManagerXYZ" />

Полное исключение ошибки

2020-05-05 11:37:38,331 [[mule_intra].sharedHttpListenerConfig.worker.09] WARN  org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Error: 0, SQLState: null
2020-05-05 11:37:38,331 [[mule_intra].sharedHttpListenerConfig.worker.09] ERROR org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Already closed.
2020-05-05 11:37:38,354 [[mule_intra].sharedHttpListenerConfig.worker.09] ERROR org.mule.exception.DefaultMessagingExceptionStrategy -
********************************************************************************
Message               : Failed to invoke com.domain.api.service.ColService@6dcf91b3.
Payload               : {NullPayload}
Payload Type          : org.mule.transport.NullPayload
Element               : /get:\/col:api-config/processors/0 @ rh:api.xml:173 (Invoke)
Element XML           : <invoke object-ref="colService" method="findAll" methodArguments="#[message.inboundProperties.'http.query.params']" doc:name="Invoke"></invoke>
--------------------------------------------------------------------------------
Root Exception stack trace:
java.net.SocketException: Pipe quebrado
        at java.net.SocketOutputStream.socketWrite0(Native Method)
        at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:109)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:153)
        at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
        at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
        at com.mysql.cj.protocol.a.SimplePacketSender.send(SimplePacketSender.java:55)
        at com.mysql.cj.protocol.a.TimeTrackingPacketSender.send(TimeTrackingPacketSender.java:50)
        at com.mysql.cj.protocol.a.NativeProtocol.send(NativeProtocol.java:578)
        at com.mysql.cj.protocol.a.NativeProtocol.sendCommand(NativeProtocol.java:648)
        at com.mysql.cj.protocol.a.NativeProtocol.sendQueryPacket(NativeProtocol.java:980)
        at com.mysql.cj.protocol.a.NativeProtocol.sendQueryString(NativeProtocol.java:915)
        at com.mysql.cj.NativeSession.execSQL(NativeSession.java:1182)
        at com.mysql.cj.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:2057)
        at org.apache.commons.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371)
        at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:328)
        at org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:72)
        at org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:162)
        at org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1471)
        at org.hibernate.jpa.internal.TransactionImpl.begin(TransactionImpl.java:61)
        at org.springframework.orm.jpa.vendor.HibernateJpaDialect.beginTransaction(HibernateJpaDialect.java:166)
        at org.springframework.orm.jpa.JpaTransactionManager.doBegin(JpaTransactionManager.java:380)
        at org.springframework.transaction.support.AbstractPlatformTransactionManager.getTransaction(AbstractPlatformTransactionManager.java:373)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.createTransactionIfNecessary(TransactionAspectSupport.java:463)
        at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:276)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
        at com.sun.proxy.$Proxy130.findAll(Unknown Source)
        at sun.reflect.GeneratedMethodAccessor111.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.mule.processor.InvokerMessageProcessor.process(InvokerMessageProcessor.java:166)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:88)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.processor.AsyncInterceptingMessageProcessor.process(AsyncInterceptingMessageProcessor.java:102)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:88)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.construct.DynamicPipelineMessageProcessor.process(DynamicPipelineMessageProcessor.java:55)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:88)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.interceptor.AbstractEnvelopeInterceptor.processBlocking(AbstractEnvelopeInterceptor.java:58)
        at org.mule.processor.AbstractRequestResponseMessageProcessor.process(AbstractRequestResponseMessageProcessor.java:47)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.processor.AbstractFilteringMessageProcessor.process(AbstractFilteringMessageProcessor.java:52)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.processor.AbstractRequestResponseMessageProcessor.processBlocking(AbstractRequestResponseMessageProcessor.java:56)
        at org.mule.processor.AbstractRequestResponseMessageProcessor.process(AbstractRequestResponseMessageProcessor.java:47)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:88)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.construct.Flow$2.process(Flow.java:138)
        at org.mule.construct.Flow$2.process(Flow.java:133)
        at org.mule.execution.ExecuteCallbackInterceptor.execute(ExecuteCallbackInterceptor.java:16)
        at org.mule.execution.CommitTransactionInterceptor.execute(CommitTransactionInterceptor.java:35)
        at org.mule.execution.CommitTransactionInterceptor.execute(CommitTransactionInterceptor.java:22)
        at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:30)
        at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:14)
        at org.mule.execution.BeginAndResolveTransactionInterceptor.execute(BeginAndResolveTransactionInterceptor.java:67)
        at org.mule.execution.SuspendXaTransactionInterceptor.execute(SuspendXaTransactionInterceptor.java:50)
        at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:28)
        at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:13)
        at org.mule.execution.ErrorHandlingExecutionTemplate.execute(ErrorHandlingExecutionTemplate.java:60)
        at org.mule.execution.ErrorHandlingExecutionTemplate.execute(ErrorHandlingExecutionTemplate.java:30)
        at org.mule.construct.Flow.process(Flow.java:132)
        at org.mule.module.apikit.AbstractRouter.processBlockingRequest(AbstractRouter.java:87)
        at org.mule.module.apikit.AbstractRouter.processBlocking(AbstractRouter.java:77)
        at org.mule.processor.AbstractRequestResponseMessageProcessor.process(AbstractRequestResponseMessageProcessor.java:47)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.processor.AsyncInterceptingMessageProcessor.process(AsyncInterceptingMessageProcessor.java:102)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.construct.DynamicPipelineMessageProcessor.process(DynamicPipelineMessageProcessor.java:55)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:88)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.interceptor.AbstractEnvelopeInterceptor.processBlocking(AbstractEnvelopeInterceptor.java:58)
        at org.mule.processor.AbstractRequestResponseMessageProcessor.process(AbstractRequestResponseMessageProcessor.java:47)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.processor.AbstractFilteringMessageProcessor.process(AbstractFilteringMessageProcessor.java:52)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:98)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.processor.AbstractRequestResponseMessageProcessor.processBlocking(AbstractRequestResponseMessageProcessor.java:56)
        at org.mule.processor.AbstractRequestResponseMessageProcessor.process(AbstractRequestResponseMessageProcessor.java:47)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.processor.BlockingProcessorExecutor.executeNext(BlockingProcessorExecutor.java:88)
        at org.mule.processor.BlockingProcessorExecutor.execute(BlockingProcessorExecutor.java:59)
        at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:27)
        at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:108)
        at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
        at org.mule.construct.AbstractPipeline$3.process(AbstractPipeline.java:232)
        at org.mule.module.http.internal.listener.HttpMessageProcessorTemplate.routeEvent(HttpMessageProcessorTemplate.java:73)
        at org.mule.execution.AsyncResponseFlowProcessingPhase$1.process(AsyncResponseFlowProcessingPhase.java:72)
        at org.mule.execution.AsyncResponseFlowProcessingPhase$1.process(AsyncResponseFlowProcessingPhase.java:59)
        at org.mule.execution.ExecuteCallbackInterceptor.execute(ExecuteCallbackInterceptor.java:16)
        at org.mule.execution.CommitTransactionInterceptor.execute(CommitTransactionInterceptor.java:35)
        at org.mule.execution.CommitTransactionInterceptor.execute(CommitTransactionInterceptor.java:22)
        at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:30)
        at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:14)
        at org.mule.execution.BeginAndResolveTransactionInterceptor.execute(BeginAndResolveTransactionInterceptor.java:67)
        at org.mule.execution.ResolvePreviousTransactionInterceptor.execute(ResolvePreviousTransactionInterceptor.java:44)
        at org.mule.execution.SuspendXaTransactionInterceptor.execute(SuspendXaTransactionInterceptor.java:50)
        at org.mule.execution.ValidateTransactionalStateInterceptor.execute(ValidateTransactionalStateInterceptor.java:40)
        at org.mule.execution.IsolateCurrentTransactionInterceptor.execute(IsolateCurrentTransactionInterceptor.java:41)
        at org.mule.execution.ExternalTransactionInterceptor.execute(ExternalTransactionInterceptor.java:48)
        at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:28)
        at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:13)
        at org.mule.execution.TransactionalErrorHandlingExecutionTemplate.execute(TransactionalErrorHandlingExecutionTemplate.java:110)
        at org.mule.execution.AsyncResponseFlowProcessingPhase.runPhase(AsyncResponseFlowProcessingPhase.java:58)
        at org.mule.execution.AsyncResponseFlowProcessingPhase.runPhase(AsyncResponseFlowProcessingPhase.java:35)
        at org.mule.execution.PhaseExecutionEngine$InternalPhaseExecutionEngine.process(PhaseExecutionEngine.java:114)
        at org.mule.execution.PhaseExecutionEngine.process(PhaseExecutionEngine.java:41)
        at org.mule.execution.MuleMessageProcessingManager.processMessage(MuleMessageProcessingManager.java:32)
        at org.mule.module.http.internal.listener.DefaultHttpListener$1.handleRequest(DefaultHttpListener.java:133)
        at org.mule.module.http.internal.listener.grizzly.GrizzlyRequestDispatcherFilter.handleRead(GrizzlyRequestDispatcherFilter.java:83)
        at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
        at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284)
        at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201)
        at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133)
        at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112)
        at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
        at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:526)
        at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
        at org.mule.module.http.internal.listener.grizzly.ExecutorPerServerAddressIOStrategy.run0(ExecutorPerServerAddressIOStrategy.java:102)
        at org.mule.module.http.internal.listener.grizzly.ExecutorPerServerAddressIOStrategy.access$100(ExecutorPerServerAddressIOStrategy.java:30)
        at org.mule.module.http.internal.listener.grizzly.ExecutorPerServerAddressIOStrategy$WorkerThreadRunnable.run(ExecutorPerServerAddressIOStrategy.java:125)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)

********************************************************************************
04.05.2020

  • Вы должны включить свойство Java mule.verbose.exceptions=true для действительно полной трассировки стека. 04.05.2020
  • Хорошо, я обновлю вопрос подробной версией ошибки. 04.05.2020

Ответы:


1

Вполне вероятно, что соединение закрывается базой данных или брандмауэром где-то посередине.

Некоторые пулы баз данных позволяют настраивать максимальное время жизни параметров соединения. Значение тайм-аута должно быть меньше, чем значение, установленное для закрывающего компонента. Например, если бездействующие соединения закрываются через 12 часов, вы можете установить его в пуле как 11 часов.

Документация по DBCP 1.4

Решение для DBCP 1.x

Включите эти свойства:

    <property name="timeBetweenEvictionRunsMillis" value="60000" />
    <property name="validationQuery" value="select 1" />
    <property name="testWhileIdle" value="true" />

Это будет проверять/восстанавливать соединение каждую минуту.

Кстати, DBCP 1.x действительно устарел. Вам следует подумать о переходе на более новую версию 2.x или использовать другую библиотеку.

04.05.2020
  • Я использую JPA, я попытаюсь найти какое-нибудь свойство, которое делает то же самое, что и maxConnLifetimeMillis для DBCP. 05.05.2020
  • Ваша конфигурация JPA ссылается на источник данных пула DBCP: <bean name="dataSourceXYZ" class="org.apache.commons.dbcp.BasicDataSource">. Вы можете установить это свойство в пуле. 05.05.2020
  • Ой, спасибо, моя ошибка. Я смотрел на свои переменные сервера базы данных и wait_timeout = 28800 (8 hours). Описание mysql для wait_timeout: Количество секунд, в течение которых сервер ожидает активности в неинтерактивном соединении, прежде чем закрыть его.. Итак, изучив документы DBCP, что вы думаете о removeAbandonedTimeout вместо maxConnLifetimeMillis? Потому что я думаю, что maxConnLifetimeMillis не учитывает время простоя. В любом случае, я думаю, что это пути решения. 05.05.2020
  • removeAbandoned* конфигурации в DBCP имеют дело с подключениями, которые не возвращаются в пул по прошествии длительного времени и не используются. Это, вероятно, вызвано проблемой в логике или какой-то другой библиотеке. Если они у вас есть, то у вас другая проблема. Я бы использовал все еще использование maxConnLifetimeMillis, но я бы дополнил его конфигурациями validationQuery и testWhileIdle, чтобы быть уверенным, что бездействующие соединения в пуле по-прежнему действительны. Использование проверочного запроса является хорошей практикой. Сказав, что большинство или все эти конфигурации можно использовать вместе. 05.05.2020
  • Я отредактировал ваш ответ, чтобы добавить свойства, которые решили мою проблему, но редактирование было отклонено. Свойства были следующими: ‹имя свойства=timeBetweenEvictionRunsMillis значение=60000 /› ‹имя свойства=validationQuery значение=выбрать 1 /› ‹имя свойства=testWhileIdle значение=true /› 06.05.2020
  • Извините, у меня еще не было времени просмотреть его. 06.05.2020
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..