kettle加工数据报unexpected end of stream, read 0 bytes from 7 (socket was closed by server)错误

使用的是kettle7,资源库用的是MySQL5。
kettle通过JDBC连接池连接数据库。
每天执行一次调度,偶尔会报下面的错误:

ERROR (version 7.1.0.0-12, build 1 from 2017-05-16 17.18.02 by buildguy) : org.pentaho.di.core.exception.KettleException: 
 Unexpected error during transformation metadata load

 An error occured loading the directory tree from the repository

 ERROR executing query
 (conn=5401016) unexpected end of stream, read 0 bytes from 7 (socket was closed by server)



    at org.pentaho.di.job.entries.trans.JobEntryTrans.getTransMeta(JobEntryTrans.java:1351)
    at org.pentaho.di.job.entries.trans.JobEntryTrans.execute(JobEntryTrans.java:681)
    at org.pentaho.di.job.Job.execute(Job.java:724)
    at org.pentaho.di.job.Job.execute(Job.java:865)
    at org.pentaho.di.job.Job.execute(Job.java:865)
    at org.pentaho.di.job.Job.execute(Job.java:865)
    at org.pentaho.di.job.Job.execute(Job.java:546)
    at org.pentaho.di.job.Job.run(Job.java:436)
 Caused by: org.pentaho.di.core.exception.KettleException: 
 An error occured loading the directory tree from the repository

 ERROR executing query
 (conn=5401016) unexpected end of stream, read 0 bytes from 7 (socket was closed by server)


    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryDirectoryDelegate.loadRepositoryDirectoryTree(KettleDatabaseRepositoryDirectoryDelegate.java:108)
    at org.pentaho.di.repository.kdr.KettleDatabaseRepository.loadRepositoryDirectoryTree(KettleDatabaseRepository.java:608)
    at org.pentaho.di.repository.kdr.KettleDatabaseRepository.findDirectory(KettleDatabaseRepository.java:620)
    at org.pentaho.di.job.entries.trans.JobEntryTrans.getTransMeta(JobEntryTrans.java:1301)
    ... 7 more
 Caused by: org.pentaho.di.core.exception.KettleDatabaseException: 
 ERROR executing query
 (conn=5401016) unexpected end of stream, read 0 bytes from 7 (socket was closed by server)

    at org.pentaho.di.core.database.Database.openQuery(Database.java:1824)
    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryConnectionDelegate.getIDs(KettleDatabaseRepositoryConnectionDelegate.java:1573)
    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryDirectoryDelegate.getSubDirectoryIDs(KettleDatabaseRepositoryDirectoryDelegate.java:290)
    at org.pentaho.di.repository.kdr.KettleDatabaseRepository.getSubDirectoryIDs(KettleDatabaseRepository.java:684)
    at org.pentaho.di.repository.kdr.delegates.KettleDatabaseRepositoryDirectoryDelegate.loadRepositoryDirectoryTree(KettleDatabaseRepositoryDirectoryDelegate.java:98)
    ... 10 more
 Caused by: java.sql.SQLNonTransientConnectionException: (conn=5401016) unexpected end of stream, read 0 bytes from 7 (socket was closed by server)
    at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.get(ExceptionMapper.java:260)
    at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.getException(ExceptionMapper.java:164)
    at org.mariadb.jdbc.MariaDbStatement.executeExceptionEpilogue(MariaDbStatement.java:258)
    at org.mariadb.jdbc.ClientSidePreparedStatement.executeInternal(ClientSidePreparedStatement.java:225)
    at org.mariadb.jdbc.ClientSidePreparedStatement.execute(ClientSidePreparedStatement.java:145)
    at org.mariadb.jdbc.ClientSidePreparedStatement.executeQuery(ClientSidePreparedStatement.java:159)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
    at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96)
    at org.pentaho.di.core.database.Database.openQuery(Database.java:1812)
    ... 14 more
 Caused by: java.sql.SQLNonTransientConnectionException: unexpected end of stream, read 0 bytes from 7 (socket was closed by server)
    at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.handleIoException(AbstractQueryProtocol.java:1941)
    at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readPacket(AbstractQueryProtocol.java:1445)
    at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:1424)
    at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:240)
    at org.mariadb.jdbc.ClientSidePreparedStatement.executeInternal(ClientSidePreparedStatement.java:216)
    ... 19 more
 Caused by: java.io.EOFException: unexpected end of stream, read 0 bytes from 7 (socket was closed by server)
    at org.mariadb.jdbc.internal.io.input.DecompressPacketInputStream.readBlocking(DecompressPacketInputStream.java:194)
    at org.mariadb.jdbc.internal.io.input.DecompressPacketInputStream.getPacketArray(DecompressPacketInputStream.java:111)
    at org.mariadb.jdbc.internal.io.input.DecompressPacketInputStream.getPacket(DecompressPacketInputStream.java:91)
    at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readPacket(AbstractQueryProtocol.java:1443)
    ... 22 more

有解决方案了吗