2017-01-19 9 views
0

ここにログがあります。何も相互作用のない1日後に問題が発生します。それは非同期メールプラグインですか?それは設定ですか?誰がこれで私を助けることができる、任意の助けが感謝しています。 Grailsの2.4.01日後にgrailsプログラムがハングします。解決策が必要です

、Ubuntuの16.04

The last packet successfully received from the server was 278.019 milliseconds ago. The last packet sent successfully to the server was 218.021 milliseconds ago. 
ERROR 2017-01-19 10:37:47,642 interceptor.TransactionInterceptor Application exception overridden by rollback exception 
org.springframework.dao.RecoverableDataAccessException: Hibernate operation: could not prepare statement; SQL [update async_mail_mess set status=? where end_date<? and (status=? or status=?)]; Communications link failure 

The last packet successfully received from the server was 278.019 milliseconds ago. The last packet sent successfully to the server was 218.021 milliseconds ago.; nested exception is com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 

The last packet successfully received from the server was 278.019 milliseconds ago. The last packet sent successfully to the server was 218.021 milliseconds ago. 
    at grails.plugin.asyncmail.AsynchronousMailPersistenceService$_updateExpiredMessages_closure4.doCall(AsynchronousMailPersistenceService.groovy:66) 
    at org.grails.datastore.gorm.GormStaticApi.withTransaction(GormStaticApi.groovy:814) 
    at org.grails.datastore.gorm.GormStaticApi.withTransaction(GormStaticApi.groovy:714) 
    at grails.plugin.asyncmail.AsynchronousMailPersistenceService.updateExpiredMessages(AsynchronousMailPersistenceService.groovy:63) 
    at grails.plugin.asyncmail.ExpiredMessagesCollectorJob.execute(ExpiredMessagesCollectorJob.groovy:13) 
    at grails.plugins.quartz.GrailsJobFactory$GrailsJob.execute(GrailsJobFactory.java:104) 
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202) 
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) 
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 

The last packet successfully received from the server was 278.019 milliseconds ago. The last packet sent successfully to the server was 218.021 milliseconds ago. 
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) 
    at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116) 
    at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3853) 
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2471) 
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2651) 
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2671) 
    at com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:5024) 
    ... 8 more 
Caused by: java.net.SocketException: Broken pipe (Write failed) 
    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.jdbc.MysqlIO.send(MysqlIO.java:3834) 
    ... 12 more 
ERROR 2017-01-19 10:37:47,642 listeners.ExceptionPrinterJobListener Exception occurred in job: Grails Job 
org.quartz.JobExecutionException: org.springframework.transaction.TransactionSystemException: Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: rollback failed [See nested exception: org.springframework.transaction.TransactionSystemException: Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: rollback failed] 
    at grails.plugins.quartz.GrailsJobFactory$GrailsJob.execute(GrailsJobFactory.java:111) 
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202) 
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) 
Caused by: org.springframework.transaction.TransactionSystemException: Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: rollback failed 
    at grails.plugin.asyncmail.ExpiredMessagesCollectorJob.execute(ExpiredMessagesCollectorJob.groovy:13) 
    at grails.plugins.quartz.GrailsJobFactory$GrailsJob.execute(GrailsJobFactory.java:104) 
    ... 2 more 
Caused by: org.hibernate.TransactionException: rollback failed 
    ... 4 more 
Caused by: org.hibernate.TransactionException: unable to rollback against JDBC connection 
    ... 4 more 
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Communications link failure during rollback(). Transaction resolution unknown. 
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) 
    at com.mysql.jdbc.Util.getInstance(Util.java:386) 
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1013) 
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987) 
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982) 
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927) 
    at com.mysql.jdbc.ConnectionImpl.rollback(ConnectionImpl.java:4757) 
    ... 4 more 
ERROR 2017-01-19 10:38:09,620 spi.SqlExceptionHelper Communications link failure 
+0

以下の回答は多分少し面白いです.. AsynchronousMailPersistenceService $ _updateExpiredMessages_closure4.doCall(AsynchronousMailPersistenceService.groovy:66)ここから始まります。それはプラグインに関する状態や設定の問題を変更したレコードかもしれません - あるいはそれ以外に、プラグインに関連して、Grailsアプリケーション上で実行されているAsynchronousMailを呼び出すことになります。特に問題のGrailsアプリケーションではありません。代わりに内部で実行されるもの – Vahid

答えて

0

それができる2つの理由

1.

)あなたのGrailsボックスがネットワークから切断しまったの。

2.)データベースサーバーが停止します。

0

あなたは、DB接続がvalidationQueryは、例えばデータベースベンダーに依存します

dataSource { 
    properties { 
     validationQuery=SELECT 1 FROM DUAL 
     validationQueryTimeout=3 
     validationInterval=15000 
    } 
} 

生かされていることを確認するためにあなたのデータソースの設定に設定パラメータを追加することができます上記のOracleで動作します

関連する問題