Getting “exception clearing maxRows/queryTimeout”

2019-08-08 19:31发布

I am running a standalone sonar analysis on my Ionic javascript project. The scan is being trigger from jenkins using sonarqube plugin 2.1 The mysql db and sonarqube is on same server. Jenkins is on seperate server.

The scan seems to run fine but throws following exception when storing results in database. seems like it is trying to store results in db for 3+ hrs than throws exception.
Has anybody come across same issue? anybody have any suggestion to fix the issue?

Thanks

16:00:21.705 INFO  - Sensor CPD Sensor (wrapped) done: 6413 ms
16:00:22.279 INFO  - Execute decorators...
16:01:41.614 INFO  - Store results in database
19:33:20.528 WARN  - exception clearing maxRows/queryTimeout
com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: No operations allowed after statement closed.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:1.7.0_21]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) ~[na:1.7.0_21]
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:1.7.0_21]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:525) ~[na:1.7.0_21]
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:411) ~[mysql-connector-java-5.1.27.jar:na]
    at com.mysql.jdbc.Util.getInstance(Util.java:386) ~[mysql-connector-java-5.1.27.jar:na]
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1015) ~[mysql-connector-java-5.1.27.jar:na]
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989) ~[mysql-connector-java-5.1.27.jar:na]
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975) ~[mysql-connector-java-5.1.27.jar:na]
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920) ~[mysql-connector-java-5.1.27.jar:na]
    at com.mysql.jdbc.StatementImpl.checkClosed(StatementImpl.java:461) ~[mysql-connector-java-5.1.27.jar:na]
    at com.mysql.jdbc.StatementImpl.getMaxRows(StatementImpl.java:2216) ~[mysql-connector-java-5.1.27.jar:na]
    at org.apache.commons.dbcp.DelegatingStatement.getMaxRows(DelegatingStatement.java:237) ~[sonar-batch-maven-compat-4.5.1.jar:na]
    at org.apache.commons.dbcp.DelegatingStatement.getMaxRows(DelegatingStatement.java:237) ~[sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:298) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.jdbc.AbstractBatcher.closeQueryStatement(AbstractBatcher.java:234) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.loader.Loader.getResultSet(Loader.java:1826) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.loader.Loader.doQuery(Loader.java:697) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.loader.Loader.doList(Loader.java:2232) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2129) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.loader.Loader.list(Loader.java:2124) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:401) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:363) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:196) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1149) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:67) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.phases.UpdateStatusJob.disablePreviousSnapshot(UpdateStatusJob.java:91) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.phases.UpdateStatusJob.execute(UpdateStatusJob.java:66) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.phases.PhaseExecutor.updateStatusJob(PhaseExecutor.java:156) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.phases.PhaseExecutor.execute(PhaseExecutor.java:130) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:194) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:233) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:228) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:221) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.scan.ScanTask.scan(ScanTask.java:64) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.scan.ScanTask.execute(ScanTask.java:51) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.bootstrap.TaskContainer.doAfterStart(TaskContainer.java:125) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.bootstrap.BootstrapContainer.executeTask(BootstrapContainer.java:173) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:95) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67) [sonar-batch-maven-compat-4.5.1.jar:na]
    at org.sonar.runner.batch.IsolatedLauncher.execute(IsolatedLauncher.java:48) [sonar-runner-batch3143046930648341546.jar:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.7.0_21]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[na:1.7.0_21]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.7.0_21]
    at java.lang.reflect.Method.invoke(Method.java:601) ~[na:1.7.0_21]
    at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:87) [sonar-runner-dist-2.4.jar:na]
    at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75) [sonar-runner-dist-2.4.jar:na]
    at java.security.AccessController.doPrivileged(Native Method) [na:1.7.0_21]
    at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69) [sonar-runner-dist-2.4.jar:na]
    at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50) [sonar-runner-dist-2.4.jar:na]
    at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102) [sonar-runner-dist-2.4.jar:na]
    at org.sonar.runner.api.Runner.execute(Runner.java:100) [sonar-runner-dist-2.4.jar:na]
    at org.sonar.runner.Main.executeTask(Main.java:70) [sonar-runner-dist-2.4.jar:na]
    at org.sonar.runner.Main.execute(Main.java:59) [sonar-runner-dist-2.4.jar:na]
    at org.sonar.runner.Main.main(Main.java:53) [sonar-runner-dist-2.4.jar:na]
19:33:20.530 WARN  - SQL Error: 0, SQLState: 08S01
19:33:20.530 ERROR - Communications link failure

1条回答
趁早两清
2楼-- · 2019-08-08 20:13

I had the same problem. It was caused by a timeout.

I changed the MySQL Server timeout from 180 to 900 seconds. (my.cnf: wait_timeout = 900, and restart MySQL server)

Check your MySQL server timeout and Sonar running time.

查看更多
登录 后发表回答