Maven plugin fails with "Unable to connect to the database"
See original GitHub issueHi,
I’m attempting to run the dependency-check-maven plugin as part of a Jenkins build. Intermittently the job fails (maybe 50% of the time) with a “Unable to connect to the database”, see Jenkins Console output below. The root cause seems to be an ArrayIndexOutOfBoundsException in the H2 database driver, but that doesn’t make sense to me.
My Jenkins setup is a master with two slaves.
Thanks for any suggestions.
Martin
Executing Maven: -B -f /home/jenkins/workspace/my-project_OWASP/pom.xml clean compile dependency-check:aggregate -X
Apache Maven 3.2.2 (45f7c06d68e745d05611f7fd14efb6594181933e; 2014-06-17T13:51:42+00:00)
Maven home: /opt/apache-maven-3.2.2
Java version: 1.7.0_72, vendor: Oracle Corporation
Java home: /opt/jdk1.7.0_72/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-229.11.1.el7.x86_64", arch: "amd64", family: "unix"
<-- Output removed for brevity -->
[INFO] --- dependency-check-maven:1.3.1:aggregate (default-cli) @ my-project ---
[DEBUG] Properties loaded:
analyzer.nexus.enabled='true'
analyzer.composer.lock.enabled='true'
autoupdate='true'
analyzer.assembly.enabled='true'
analyzer.nexus.proxy='true'
cve.url-1.2.base='https://nvd.nist.gov/download/nvdcve-%d.xml.gz'
cve.url-1.2.modified='https://nvd.nist.gov/download/nvdcve-Modified.xml.gz'
cpe.url='http://static.nvd.nist.gov/feeds/xml/cpe/dictionary/official-cpe-dictionary_v2.3.xml.gz'
data.driver_name='org.h2.Driver'
data.file_name='dc.h2.db'
application.name='Dependency-Check Core'
data.directory='[JAR]/data'
max.download.threads='3'
cve.url-2.0.base='https://nvd.nist.gov/feeds/xml/cve/nvdcve-2.0-%d.xml.gz'
archive.scan.depth='3'
analyzer.nuspec.enabled='true'
cve.url-2.0.modified='https://nvd.nist.gov/feeds/xml/cve/nvdcve-2.0-Modified.xml.gz'
cve.startyear='2002'
cve.url.modified.validfordays='7'
analyzer.jar.enabled='true'
data.version='2.9'
data.user='dcuser'
analyzer.nexus.url='https://repository.sonatype.org/service/local/'
analyzer.central.enabled='true'
application.version='1.3.1'
analyzer.archive.enabled='true'
data.driver_path=''
cpe.validfordays='30'
analyzer.central.url='http://search.maven.org/solrsearch/select'
engine.version.url='http://jeremylong.github.io/DependencyCheck/current.txt'
data.connection_string='jdbc:h2:file:%s;FILE_LOCK=SERIALIZED;AUTOCOMMIT=ON;'
downloader.quick.query.timestamp='true'
data.password='*****'
[DEBUG] Properties updated via merge:
analyzer.nexus.enabled='true'
analyzer.composer.lock.enabled='true'
autoupdate='true'
analyzer.assembly.enabled='true'
analyzer.nexus.proxy='true'
cve.url-1.2.base='https://nvd.nist.gov/download/nvdcve-%d.xml.gz'
cve.url-1.2.modified='https://nvd.nist.gov/download/nvdcve-Modified.xml.gz'
cpe.url='http://static.nvd.nist.gov/feeds/xml/cpe/dictionary/official-cpe-dictionary_v2.3.xml.gz'
data.driver_name='org.h2.Driver'
data.file_name='dc.h2.db'
application.name='Dependency-Check Core'
data.directory='[JAR]/../../dependency-check-data'
max.download.threads='3'
cve.url-2.0.base='https://nvd.nist.gov/feeds/xml/cve/nvdcve-2.0-%d.xml.gz'
archive.scan.depth='3'
analyzer.nuspec.enabled='true'
cve.url-2.0.modified='https://nvd.nist.gov/feeds/xml/cve/nvdcve-2.0-Modified.xml.gz'
cve.startyear='2002'
cve.url.modified.validfordays='7'
analyzer.jar.enabled='true'
data.version='2.9'
data.user='dcuser'
analyzer.nexus.url='https://repository.sonatype.org/service/local/'
analyzer.central.enabled='true'
application.version='1.3.1'
analyzer.archive.enabled='true'
data.driver_path=''
cpe.validfordays='30'
analyzer.central.url='http://search.maven.org/solrsearch/select'
engine.version.url='http://jeremylong.github.io/DependencyCheck/current.txt'
data.connection_string='jdbc:h2:file:%s;FILE_LOCK=SERIALIZED;AUTOCOMMIT=ON;'
downloader.quick.query.timestamp='true'
data.password='*****'
[DEBUG] Setting: autoupdate='true'
[DEBUG] Setting: analyzer.jar.enabled='true'
[DEBUG] Setting: analyzer.nuspec.enabled='true'
[DEBUG] Setting: analyzer.central.enabled='true'
[DEBUG] Setting: analyzer.nexus.enabled='true'
[DEBUG] Setting: analyzer.nexus.proxy='true'
[DEBUG] Setting: analyzer.archive.enabled='true'
[DEBUG] Setting: analyzer.assembly.enabled='true'
[DEBUG] Setting: skip.test.scope='true'
[DEBUG] Setting: skip.runtime.scope='false'
[DEBUG] Setting: skip.provided.scope='false'
[DEBUG] Loading driver: org.h2.Driver
[DEBUG] Settings.getDataFile() - file: '[JAR]/../../dependency-check-data'
[DEBUG] Settings.getDataFile() - transforming filename
[DEBUG] Settings.getDataFile() - jar file: '/home/jenkins/.m2/repository/org/owasp/dependency-check-utils/1.3.1'
[DEBUG] Settings.getDataFile() - returning: '/home/jenkins/.m2/repository/org/owasp/dependency-check-utils/1.3.1/../../dependency-check-data'
[DEBUG] Connection String: 'jdbc:h2:file:/home/jenkins/.m2/repository/org/owasp/dependency-check-data/dc;FILE_LOCK=SERIALIZED;AUTOCOMMIT=ON;'
[DEBUG] Settings.getDataFile() - file: '[JAR]/../../dependency-check-data'
[DEBUG] Settings.getDataFile() - transforming filename
[DEBUG] Settings.getDataFile() - jar file: '/home/jenkins/.m2/repository/org/owasp/dependency-check-utils/1.3.1'
[DEBUG] Settings.getDataFile() - returning: '/home/jenkins/.m2/repository/org/owasp/dependency-check-utils/1.3.1/../../dependency-check-data'
[DEBUG] Need to create DB Structure: false
[DEBUG] Loading database connection
[DEBUG] Connection String: jdbc:h2:file:/home/jenkins/.m2/repository/org/owasp/dependency-check-data/dc;FILE_LOCK=SERIALIZED;AUTOCOMMIT=ON;
[DEBUG] Database User: dcuser
[DEBUG] Unable to connect to the database
org.h2.jdbc.JdbcSQLException: General error: "java.lang.ArrayIndexOutOfBoundsException: 0" [50000-176]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:344)
at org.h2.message.DbException.get(DbException.java:167)
at org.h2.message.DbException.convert(DbException.java:294)
at org.h2.engine.Database.openDatabase(Database.java:291)
at org.h2.engine.Database.<init>(Database.java:254)
at org.h2.engine.Engine.openSession(Engine.java:57)
at org.h2.engine.Engine.openSession(Engine.java:164)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:142)
at org.h2.engine.Engine.createSession(Engine.java:125)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:331)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:107)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:91)
at org.h2.Driver.connect(Driver.java:74)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at org.owasp.dependencycheck.data.nvdcve.ConnectionFactory.initialize(ConnectionFactory.java:141)
at org.owasp.dependencycheck.Engine.initializeEngine(Engine.java:105)
at org.owasp.dependencycheck.Engine.<init>(Engine.java:85)
at org.owasp.dependencycheck.maven.Engine.<init>(Engine.java:66)
at org.owasp.dependencycheck.maven.BaseDependencyCheckMojo.initializeEngine(BaseDependencyCheckMojo.java:556)
at org.owasp.dependencycheck.maven.AggregateMojo.generateDataFile(AggregateMojo.java:221)
at org.owasp.dependencycheck.maven.AggregateMojo.runCheck(AggregateMojo.java:64)
at org.owasp.dependencycheck.maven.BaseDependencyCheckMojo.execute(BaseDependencyCheckMojo.java:330)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:347)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:154)
at org.jvnet.hudson.maven3.launcher.Maven32Launcher.main(Maven32Launcher.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:330)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:238)
at jenkins.maven3.agent.Maven32Main.launch(Maven32Main.java:186)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:136)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:71)
at hudson.remoting.UserRequest.perform(UserRequest.java:121)
at hudson.remoting.UserRequest.perform(UserRequest.java:49)
at hudson.remoting.Request$2.run(Request.java:324)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
at org.h2.index.PageDataLeaf.getRowAt(PageDataLeaf.java:333)
at org.h2.index.PageDataCursor.nextRow(PageDataCursor.java:102)
at org.h2.index.PageDataCursor.next(PageDataCursor.java:53)
at org.h2.table.RegularTable.addIndex(RegularTable.java:272)
at org.h2.store.PageStore.addMeta(PageStore.java:1735)
at org.h2.store.PageStore.readMetaData(PageStore.java:1634)
at org.h2.store.PageStore.recover(PageStore.java:1406)
at org.h2.store.PageStore.openExisting(PageStore.java:368)
at org.h2.store.PageStore.open(PageStore.java:289)
at org.h2.engine.Database.getPageStore(Database.java:2366)
at org.h2.engine.Database.open(Database.java:657)
at org.h2.engine.Database.openDatabase(Database.java:260)
... 52 more
[DEBUG] Database connection error
org.owasp.dependencycheck.data.nvdcve.DatabaseException: Unable to connect to the database
at org.owasp.dependencycheck.data.nvdcve.ConnectionFactory.initialize(ConnectionFactory.java:156)
at org.owasp.dependencycheck.Engine.initializeEngine(Engine.java:105)
at org.owasp.dependencycheck.Engine.<init>(Engine.java:85)
at org.owasp.dependencycheck.maven.Engine.<init>(Engine.java:66)
at org.owasp.dependencycheck.maven.BaseDependencyCheckMojo.initializeEngine(BaseDependencyCheckMojo.java:556)
at org.owasp.dependencycheck.maven.AggregateMojo.generateDataFile(AggregateMojo.java:221)
at org.owasp.dependencycheck.maven.AggregateMojo.runCheck(AggregateMojo.java:64)
at org.owasp.dependencycheck.maven.BaseDependencyCheckMojo.execute(BaseDependencyCheckMojo.java:330)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:347)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:154)
at org.jvnet.hudson.maven3.launcher.Maven32Launcher.main(Maven32Launcher.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:330)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:238)
at jenkins.maven3.agent.Maven32Main.launch(Maven32Main.java:186)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:136)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:71)
at hudson.remoting.UserRequest.perform(UserRequest.java:121)
at hudson.remoting.UserRequest.perform(UserRequest.java:49)
at hudson.remoting.Request$2.run(Request.java:324)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] My Project ......................................... FAILURE [ 4.112 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.508 s
[INFO] Finished at: 2015-11-10T13:38:01+00:00
[INFO] Final Memory: 18M/295M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.owasp:dependency-check-maven:1.3.1:aggregate (default-cli) on project my-project: An exception occured connecting to the local database. Please see the log file for more details. Unable to connect to the database -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.owasp:dependency-check-maven:1.3.1:aggregate (default-cli) on project my-project: An exception occured connecting to the local database. Please see the log file for more details.
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:216)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:347)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:154)
at org.jvnet.hudson.maven3.launcher.Maven32Launcher.main(Maven32Launcher.java:132)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:330)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:238)
at jenkins.maven3.agent.Maven32Main.launch(Maven32Main.java:186)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:136)
at hudson.maven.Maven3Builder.call(Maven3Builder.java:71)
at hudson.remoting.UserRequest.perform(UserRequest.java:121)
at hudson.remoting.UserRequest.perform(UserRequest.java:49)
at hudson.remoting.Request$2.run(Request.java:324)
at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:68)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.maven.plugin.MojoExecutionException: An exception occured connecting to the local database. Please see the log file for more details.
at org.owasp.dependencycheck.maven.AggregateMojo.generateDataFile(AggregateMojo.java:226)
at org.owasp.dependencycheck.maven.AggregateMojo.runCheck(AggregateMojo.java:64)
at org.owasp.dependencycheck.maven.BaseDependencyCheckMojo.execute(BaseDependencyCheckMojo.java:330)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:132)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
... 30 more
Caused by: org.owasp.dependencycheck.data.nvdcve.DatabaseException: Unable to connect to the database
at org.owasp.dependencycheck.data.nvdcve.ConnectionFactory.initialize(ConnectionFactory.java:156)
at org.owasp.dependencycheck.Engine.initializeEngine(Engine.java:105)
at org.owasp.dependencycheck.Engine.<init>(Engine.java:85)
at org.owasp.dependencycheck.maven.Engine.<init>(Engine.java:66)
at org.owasp.dependencycheck.maven.BaseDependencyCheckMojo.initializeEngine(BaseDependencyCheckMojo.java:556)
at org.owasp.dependencycheck.maven.AggregateMojo.generateDataFile(AggregateMojo.java:221)
... 34 more
[ERROR]
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
<-- Output removed for brevity -->
Issue Analytics
- State:
- Created 8 years ago
- Comments:10 (2 by maintainers)
Top Results From Across the Web
Maven dependency check fails with "Unable to connect to the ...
Caused by: org.owasp.dependencycheck.data.nvdcve.DatabaseException: Unable to connect to the database at org.owasp.dependencycheck.data.nvdcve.
Read more >Unable to connect to the dependency-check database
I'm seeing this with the maven plugin. [ERROR] Failed to execute goal org.owasp:dependency-check-maven:3.0.2:check (default-cli) on project MY_PROJECT: Fatal ...
Read more >Spring Boot, Maven and Eclipse Errors and TroubleShooting ...
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (default-compile) on project in28minutes-multi-module-model: ...
Read more >Build fails with "Fail to compile: Invalid configuration found for ...
When trying to build your application using version 3.6.0 of the Mule Maven plugin you may see an error like: "Fail to compile:...
Read more >Failed to execute goal org.openmrs.maven.plugins:openmrs ...
am getting this error failed to setup my server Which database would you like to use?: MySQL 5.6 and above (requires pre-installed MySQL...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Use Maven Central. Apparently not I failed to publish all of the dependencies to the gradle plugin repo.
This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.