Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-48857

pipeline-maven-plugin cannot open jdbc:h2:file:/var/lib/jenkins/jenkins-jobs/jenkins-jobs database

XMLWordPrintable

      I'm currently migrating our old maven builds to pipelines with docker and maven, but the tirgger downstream builds doesnt work.  This is because the pipeline-maven-plugin cant open the database.

      Jan 08, 2018 4:46:11 PM org.jenkinsci.plugins.pipeline.maven.GlobalPipelineMavenConfig getDao
      WARNING: Exception creating database dao, skip
      org.jenkinsci.plugins.pipeline.maven.util.RuntimeSqlException: java.sql.SQLException: Connecting with old version is not supported: jdbc:h2:file:/var/lib/jenkins/jenkins-jobs/jenkins-jobs;AUTO_SERVER=TRUE;MULTI_THREADED=1
      at org.jenkinsci.plugins.pipeline.maven.dao.PipelineMavenPluginH2Dao.initializeDatabase(PipelineMavenPluginH2Dao.java:387)
      at org.jenkinsci.plugins.pipeline.maven.dao.PipelineMavenPluginH2Dao.<init>(PipelineMavenPluginH2Dao.java:78)
      at org.jenkinsci.plugins.pipeline.maven.GlobalPipelineMavenConfig.getDao(GlobalPipelineMavenConfig.java:138)
      at org.jenkinsci.plugins.pipeline.maven.listeners.DatabaseSyncRunListener.onDeleted(DatabaseSyncRunListener.java:16)
      at org.jenkinsci.plugins.pipeline.maven.listeners.DatabaseSyncRunListener.onDeleted(DatabaseSyncRunListener.java:11)
      at hudson.model.listeners.RunListener.fireDeleted(RunListener.java:271)
      at hudson.model.Run.delete(Run.java:1488)
      at hudson.tasks.LogRotator.perform(LogRotator.java:131)
      at hudson.model.Job.logRotate(Job.java:472)
      at org.jenkinsci.plugins.workflow.job.WorkflowRun.lambda$finish$0(WorkflowRun.java:671)
      at jenkins.security.ImpersonatingScheduledExecutorService$1.run(ImpersonatingScheduledExecutorService.java:58)
      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      at java.lang.Thread.run(Thread.java:748)
      Caused by: java.sql.SQLException: Connecting with old version is not supported: jdbc:h2:file:/var/lib/jenkins/jenkins-jobs/jenkins-jobs;AUTO_SERVER=TRUE;MULTI_THREADED=1
      at org.h2.jdbcx.JdbcDataSource.getJdbcConnection(JdbcDataSource.java:193)
      at org.h2.jdbcx.JdbcDataSource.getXAConnection(JdbcDataSource.java:351)
      at org.h2.jdbcx.JdbcDataSource.getPooledConnection(JdbcDataSource.java:383)
      at org.h2.jdbcx.JdbcConnectionPool.getConnectionNow(JdbcConnectionPool.java:226)
      at org.h2.jdbcx.JdbcConnectionPool.getConnection(JdbcConnectionPool.java:198)
      at org.jenkinsci.plugins.pipeline.maven.dao.PipelineMavenPluginH2Dao.initializeDatabase(PipelineMavenPluginH2Dao.java:347)
      ... 17 more

      I believe this database is being used by the other none pipeline maven jobs still, but I have no idea why its using a different version of h2 database.

      I have updated all of jenkins and its plugins and this problem still occurs.

      Version : Jenkins ver. 2.101

      Pipeline Maven Intergration Plugin : 3.1.0

      It is possible to configure the location of this database file so I could use a different db for the pipeline maven builds?
       

            cleclerc Cyrille Le Clerc
            neil_wightman Neil Wightman
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: