jenkinsci / junit-sql-storage-plugin

https://plugins.jenkins.io/junit-sql-storage/
MIT License
6 stars 14 forks source link

Error when publishing JUnit with junit-sql-storage-plugin: java.sql.SQLException: Cannot create PoolableConnectionFactory #296

Open letuyetvu3 opened 1 year ago

letuyetvu3 commented 1 year ago

Jenkins and plugins versions report

Environment Jenkins: 2.361.3.4 OS: Linux - 3.10.0-1160.76.1.el7.x86_64 Java: 11.0.17 - Oracle Corporation (Java HotSpot(TM) 64-Bit Server VM) --- Conjur:0.5 Parameterized-Remote-Trigger:3.1.5.1 accelerated-build-now-plugin:1.0.1 ace-editor:1.1 active-directory:2.26 all-changes:1.5 analysis-core:1.96 android-emulator:3.1.3 android-lint:2.6 ant:481.v7b_09e538fcca antisamy-markup-formatter:2.7 any-buildstep:0.1 apache-httpcomponents-client-4-api:4.5.13-138.v4e7d9a_7b_a_e61 artifactory:3.17.4 async-http-client:1.7.24.3 audit-trail:3.11 authentication-tokens:1.4 aws-credentials:191.vcb_f183ce58b_9 aws-device-farm:1.30 aws-java-sdk:1.12.287-357.vf82d85a_6eefd aws-java-sdk-cloudformation:1.12.287-357.vf82d85a_6eefd aws-java-sdk-codebuild:1.12.287-357.vf82d85a_6eefd aws-java-sdk-ec2:1.12.287-357.vf82d85a_6eefd aws-java-sdk-ecr:1.12.287-357.vf82d85a_6eefd aws-java-sdk-ecs:1.12.287-357.vf82d85a_6eefd aws-java-sdk-efs:1.12.287-357.vf82d85a_6eefd aws-java-sdk-elasticbeanstalk:1.12.287-357.vf82d85a_6eefd aws-java-sdk-iam:1.12.287-357.vf82d85a_6eefd aws-java-sdk-logs:1.12.287-357.vf82d85a_6eefd aws-java-sdk-minimal:1.12.287-357.vf82d85a_6eefd aws-java-sdk-sns:1.12.287-357.vf82d85a_6eefd aws-java-sdk-sqs:1.12.287-357.vf82d85a_6eefd aws-java-sdk-ssm:1.12.287-357.vf82d85a_6eefd blueocean:1.25.8 blueocean-autofavorite:1.2.5 blueocean-bitbucket-pipeline:1.25.8 blueocean-commons:1.25.8 blueocean-config:1.25.8 blueocean-core-js:1.25.8 blueocean-dashboard:1.25.8 blueocean-display-url:2.4.1 blueocean-events:1.25.8 blueocean-git-pipeline:1.25.8 blueocean-github-pipeline:1.25.8 blueocean-i18n:1.25.8 blueocean-jira:1.25.8 blueocean-jwt:1.25.8 blueocean-personalization:1.25.8 blueocean-pipeline-api-impl:1.25.8 blueocean-pipeline-editor:1.25.8 blueocean-pipeline-scm-api:1.25.8 blueocean-rest:1.25.8 blueocean-rest-impl:1.25.8 blueocean-web:1.25.8 bootstrap4-api:4.6.0-5 bootstrap5-api:5.2.1-3 bouncycastle-api:2.26 branch-api:2.1046.v0ca_37783ecc5 build-cause-run-condition:0.1 build-environment:1.7 build-monitor-plugin:1.13+build.202205140447 build-name-setter:2.2.0 build-node-column:0.1 build-pipeline-plugin:1.5.8 build-timeout:1.24 build-token-root:151.va_e52fe3215fc build-view-column:0.3 build-with-parameters:76.v9382db_f78962 built-on-column:1.3 caffeine-api:2.9.3-65.v6a_47d0f4d1fe checks-api:1.7.5 cloudbees-aborted-builds:1.19 cloudbees-administrative-monitors:1.0.6 cloudbees-analytics:1.43 cloudbees-assurance:2.276.0.23 cloudbees-aws-cli:1.5.20 cloudbees-aws-deployer:1.21 cloudbees-bitbucket-branch-source:791.vb_eea_a_476405b cloudbees-blueocean-default-theme:0.8 cloudbees-consolidated-build-view:1.6.1 cloudbees-credentials:3.3 cloudbees-cyberark-credentials:1.0.17 cloudbees-even-scheduler:3.14 cloudbees-folder:6.758.vfd75d09eea_a_1 cloudbees-folders-plus:3.29 cloudbees-groovy-view:1.14 cloudbees-jsync-archiver:5.25 cloudbees-label-throttling-plugin:3.9 cloudbees-license:9.69 cloudbees-long-running-build:1.19 cloudbees-monitoring:2.16 cloudbees-nodes-plus:1.25 cloudbees-platform-common:1.19 cloudbees-platform-data:1.30 cloudbees-plugin-usage:2.17 cloudbees-quiet-start:1.8 cloudbees-request-filter:1.7 cloudbees-ssh-slaves:2.19 cloudbees-support:3.31 cloudbees-template:4.58 cloudbees-uc-data-api:4.50 cloudbees-unified-ui:1.23 cloudbees-view-creation-filter:1.9 cloudbees-wasted-minutes-tracker:3.8 cloudbees-workflow-template:3.19 cloudbees-workflow-ui:2.9 command-launcher:90.v669d7ccb_7c31 commons-lang3-api:3.12.0-36.vd97de6465d5b_ commons-text-api:1.10.0-27.vb_fa_3896786a_7 conditional-buildstep:1.4.2 config-file-provider:3.11.1 copy-data-to-workspace-plugin:1.0 copyartifact:1.47 credentials:1189.vf61b_a_5e2f62e credentials-binding:523.vd859a_4b_122e6 cucumber-reports:5.7.4 custom-job-icon:0.2 cvs:2.19.1 dashboard-view:2.447.vda_124dd35f11 data-tables-api:1.12.1-4 database:148.v4a_ff2ca_608b_7 database-mysql:1.4 database-sqlserver:1.0 deployed-on-column:1.9 deployer-framework:88.ve78a_92f39e8e description-column-plugin:1.3 disk-usage:0.28 display-url-api:2.3.6 docker-build-publish:1.4.0 docker-commons:1.21 docker-java-api:3.0.14 docker-traceability:1.2 docker-workflow:521.v1a_a_dd2073b_2e dockerhub-notification:2.6.2.1 dtkit-api:3.0.2 durable-task:501.ve5d4fc08b0be ec2-deployment-dashboard:1.0.10 echarts-api:5.4.0-1 email-ext:2.92 email-ext-recipients-column:27.vb_9404db_b_018d emailext-template:1.5 envinject:2.881.v37c62073ff97 envinject-api:1.199.v3ce31253ed13 extended-choice-parameter:356.va_90a_94ca_62ec extensible-choice-parameter:1.8.0 external-monitor-job:203.v683c09d993b_9 extra-columns:1.25 extreme-notification:1.6 ez-templates:1.3.5 favorite:2.4.1 flexible-publish:0.16.1 font-awesome-api:6.2.0-3 ghprb:1.42.2 git:4.12.1 git-client:3.12.1 git-server:99.va_0826a_b_cdfa_d git-validated-merge:3.34 github:1.35.0 github-api:1.303-400.v35c2d8258028 github-branch-pr-change-filter:1.2.4 github-branch-source:1695.v88de84e9f6b_9 github-organization-folder:1.6 github-pull-request-build:1.15 github-pullrequest:0.4.0 gradle:1.40 groovy:453.vcdb_a_c5c99890 handlebars:3.0.8 handy-uri-templates-2-api:2.1.8-22.v77d5b_75e6953 hockeyapp:1.2.2 htmlpublisher:1.31 http-post:1.2 icon-shim:3.0.0 infradna-backup:3.38.56 instance-identity:116.vf8f487400980 instant-messaging:1.52 ionicons-api:28.va_f3a_84439e5f ivy:2.4 jackson2-api:2.13.4.20221013-295.v8e29ea_354141 jacoco:3.3.2 jakarta-activation-api:2.0.1-2 jakarta-mail-api:2.0.1-2 javadoc:226.v71211feb_e7e9 javax-activation-api:1.2.0-5 javax-mail-api:1.6.2-7 jaxb:2.3.6-2 jdk-tool:55.v1b_32b_6ca_f9ca jenkins-design-language:1.25.8 jenkins-multijob-plugin:623.v03401733c9a_9 jersey2-api:2.37-1 jira:3.8 jjwt-api:0.11.5-77.v646c772fddb_0 job-dsl:1.76 job-import-plugin:3.6 job-restrictions:0.8 jobConfigHistory:1176.v1b_4290db_41a_5 jobcopy-builder:1.4.2 jquery:1.12.4-1 jquery-detached:1.2.1 jquery3-api:3.6.1-2 jsch:0.1.55.61.va_e9ee26616e7 jsunit:1.6 junit:1143.1145.v81b_b_9579a_019 junit-sql-storage:104.vce793afab7b3 label-linked-jobs:6.0.1 ldap:2.12 lockable-resources:1069.v726298f53f8c log-parser:2.3.0 mail-watcher-plugin:1.17 mailcommander:1.0.0 mailer:438.v02c7f0a_12fa_4 mapdb-api:1.0.9-28.vf251ce40855d mask-passwords:3.3 matrix-auth:3.1.5 matrix-project:785.v06b_7f47b_c631 maven-plugin:3.19 mercurial:1260.vdfb_723cdcc81 metrics:4.2.10-389.v93143621b_050 mina-sshd-api-common:2.9.1-44.v476733c11f82 mina-sshd-api-core:2.9.1-44.v476733c11f82 mina-sshd-api-scp:2.9.1-44.v476733c11f82 mina-sshd-api-sftp:2.9.1-44.v476733c11f82 momentjs:1.1.1 monitoring:1.91.0 msbuild:1.30 multiple-scms:0.8 nectar-license:8.41 nectar-rbac:5.77 nectar-vmware:4.3.9 node-iterator-api:49.v58a_8b_35f8363 nodejs:1.5.1 nodelabelparameter:1.11.0 nowsecure-auto-security-test:1.25 okhttp-api:4.9.3-108.v0feda04578cf openid:2.4 openid4java:0.9.8.0 operations-center-agent:2.361.0.1 operations-center-analytics-config:2.89.0.2 operations-center-analytics-reporter:2.89.0.2 operations-center-client:2.361.0.1 operations-center-cloud:2.361.0.2 operations-center-context:2.361.0.3 operations-center-openid-cse:1.8.110 ownership:0.13.0 pam-auth:1.10 parameterized-scheduler:1.1 parameterized-trigger:2.45 performance:3.20 perfpublisher:8.09 periodicbackup:1.9 pipeline-build-step:2.18 pipeline-dependency-walker:1.0.0 pipeline-github-lib:38.v445716ea_edda_ pipeline-githubnotify-step:49.vf37bf92d2bc8 pipeline-graph-analysis:195.v5812d95a_a_2f9 pipeline-groovy-lib:613.v9c41a_160233f pipeline-input-step:456.vd8a_957db_5b_e9 pipeline-milestone-step:101.vd572fef9d926 pipeline-model-api:2.2118.v31fd5b_9944b_5 pipeline-model-declarative-agent:1.1.1 pipeline-model-definition:2.2118.v31fd5b_9944b_5 pipeline-model-extensions:2.2118.v31fd5b_9944b_5 pipeline-rest-api:2.24.2 pipeline-stage-step:296.v5f6908f017a_5 pipeline-stage-tags-metadata:2.2118.v31fd5b_9944b_5 pipeline-stage-view:2.24.2 pipeline-utility-steps:2.14.0 plain-credentials:139.ved2b_9cf7587b plugin-util-api:2.17.0 popper-api:1.16.1-3 popper2-api:2.11.6-2 port-allocator:1.8 postbuildscript:2.9.0 preSCMbuildstep:36.vca_61785795a_2 prereq-buildstep:1.1 promoted-builds:892.vd6219fc0a_efb publish-over:0.22 publish-over-ftp:1.17 pubsub-light:1.17 rebuild:1.34 repository-connector:2.2.0 resource-disposer:0.20 role-strategy:569.v7476f8e4fe29 run-condition:1.5 saferestart:0.7 saml:4.372.v89f13e4c9e97 schedule-build:345.vc2d8f6ef9182 scm-api:621.vda_a_b_055e58f7 scm-filter-branch-pr:0.5.1 scoring-load-balancer:1.0.1 script-security:1190.v65867a_a_47126 scriptler:3.5 simple-parameterized-builds-report:1.5 skip-plugin:4.12 slack:631.v40deea_40323b slave-setup:1.10 slave-status:1.6 snakeyaml-api:1.32-86.ve3f030a_75631 sse-gateway:1.26 ssh-agent:295.v9ca_a_1c7cc3a_a_ ssh-credentials:305.v8f4381501156 ssh-slaves:2.846.v1b_70190624f5 sshd:3.249.v2dc2ea_416e33 strict-crumb-issuer:2.1.0 structs:324.va_f5d6774f3a_d subversion:2.16.0 support-core:1206.1208.v9b_7a_1d48db_0f template-project:1.5.2 timestamper:1.20 tmpcleaner:1.3 token-macro:308.v4f2b_ed62b_b_16 translation:1.15 trilead-api:2.72.v2a_3236754f73 unique-id:2.2.1 uno-choice:2.6.4 user-activity-monitoring:1.9 variant:59.vf075fe829ccb versioncolumn:87.v8fe7c090a_d3b view-job-filters:2.3 wikitext:3.15 windows-slaves:1.8.1 workflow-aggregator:590.v6a_d052e5a_a_b_5 workflow-api:1198.v4596ea_5329b_6 workflow-basic-steps:994.vd57e3ca_46d24 workflow-cps:2803.v1a_f77ffcc773 workflow-cps-checkpoint:2.13 workflow-cps-global-lib:588.v576c103a_ff86 workflow-durable-task-step:1199.v02b_9244f8064 workflow-job:1239.v71b_b_a_124a_725 workflow-multibranch:716.vc692a_e52371b_ workflow-scm-step:400.v6b_89a_1317c9a_ workflow-step-api:639.v6eca_cd8c04a_a_ workflow-support:839.v35e2736cfd5c ws-cleanup:0.43 xcode-plugin:2.0.17-565.v1c48051d46ef xshell:122.v18d68d5fc26e xunit:3.1.2 zephyr-for-jira-test-management:1.5

What Operating System are you using (both controller, and any agents involved in the problem)?

Jenkins controller: Virtualization: vmware Operating System: Red Hat Enterprise Linux Server 7.9 (Maipo) CPE OS Name: cpe:/o:redhat:enterprise_linux:7.9:GA:server Kernel: Linux 3.10.0-1160.76.1.el7.x86_64 Architecture: x86-64

MySQL server: Virtualization: vmware Operating System: Red Hat Enterprise Linux Server 7.9 (Maipo) CPE OS Name: cpe:/o:redhat:enterprise_linux:7.9:GA:server Kernel: Linux 3.10.0-1160.80.1.el7.x86_64 Architecture: x86-64

Jenkins agent: Mac Pro Operation System: Mac OS Monterey 12.6

Reproduction steps

  1. JUnit -> Test Result Storage Screen Shot 2023-03-06 Junit-Test-result-storage
  2. Global Database Screen Shot 2023-03-06 Global-Database
  3. Run this pipeline job to publish JUnit test result (https://dcmdev.je.corp.adobe.com:12001/job/Levu/job/DCMCS-11271/job/junit-publish-mysql). Include content of the job's configuration below Screen Shot 2023-03-06 Pipeline-Job-To-PublishJunit-result

Expected Results

Job should run successful https://dcmdev.je.corp.adobe.com:12001/job/Levu/job/DCMCS-11271/job/junit-publish-mysql/3/console

Actual Results

Here are console output of the run of job

Started by user levu@adobe.com [Pipeline] Start of Pipeline [Pipeline] node Running on dcm-mac-067 in /Users/dcmbuild/DCM/workspace/Levu/DCMCS-11271/junit-publish-mysql [Pipeline] { [Pipeline] stage [Pipeline] { (Test JUnit Plugin) [Pipeline] fileExists [Pipeline] sh

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.) [Pipeline] } [Pipeline] // stage [Pipeline] } [Pipeline] // node [Pipeline] End of Pipeline java.net.SocketException: Connection reset at java.base/java.net.SocketInputStream.read(SocketInputStream.java:186) at java.base/java.net.SocketInputStream.read(SocketInputStream.java:140) at com.mysql.cj.protocol.ReadAheadInputStream.fill(ReadAheadInputStream.java:107) at com.mysql.cj.protocol.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:150) at com.mysql.cj.protocol.ReadAheadInputStream.read(ReadAheadInputStream.java:180) at java.base/java.io.FilterInputStream.read(FilterInputStream.java:133) at com.mysql.cj.protocol.FullReadInputStream.readFully(FullReadInputStream.java:64) at com.mysql.cj.protocol.a.SimplePacketReader.readHeaderLocal(SimplePacketReader.java:81) at com.mysql.cj.protocol.a.SimplePacketReader.readHeader(SimplePacketReader.java:63) at com.mysql.cj.protocol.a.SimplePacketReader.readHeader(SimplePacketReader.java:45) at com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:575) Caused: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:61) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:105) at com.mysql.cj.exceptions.ExceptionFactory.createException(ExceptionFactory.java:151) at com.mysql.cj.exceptions.ExceptionFactory.createCommunicationsException(ExceptionFactory.java:167) at com.mysql.cj.protocol.a.NativeProtocol.readMessage(NativeProtocol.java:581) at com.mysql.cj.protocol.a.NativeProtocol.readServerCapabilities(NativeProtocol.java:536) at com.mysql.cj.protocol.a.NativeProtocol.beforeHandshake(NativeProtocol.java:423) at com.mysql.cj.protocol.a.NativeProtocol.connect(NativeProtocol.java:1427) at com.mysql.cj.NativeSession.connect(NativeSession.java:133) at com.mysql.cj.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:944) at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:814) Caused: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. at com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174) at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64) at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:824) at com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:444) at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:237) at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198) at org.apache.commons.dbcp2.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:52) at org.apache.commons.dbcp2.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:374) at org.apache.commons.dbcp2.BasicDataSource.validateConnectionFactory(BasicDataSource.java:106) at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:649) Caused: java.sql.SQLException: Cannot create PoolableConnectionFactory (Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.) at org.apache.commons.dbcp2.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:653) at org.apache.commons.dbcp2.BasicDataSource.createDataSource(BasicDataSource.java:531) at org.jenkinsci.plugins.database.BasicDataSource2.createDataSource(BasicDataSource2.java:25) at org.jenkinsci.plugins.database.AbstractRemoteDatabase.getDataSource(AbstractRemoteDatabase.java:78) at io.jenkins.plugins.junit.storage.database.DatabaseTestResultStorage$ConnectionSupplier.connection(DatabaseTestResultStorage.java:172) at io.jenkins.plugins.junit.storage.database.DatabaseTestResultStorage$RemotePublisherImpl.publish(DatabaseTestResultStorage.java:112) Also: hudson.remoting.Channel$CallSiteStackTrace: Remote call to dcm-mac-067 at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1784) at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:356) at hudson.remoting.Channel.call(Channel.java:1000) at hudson.FilePath.act(FilePath.java:1186) at hudson.FilePath.act(FilePath.java:1175) at hudson.tasks.junit.JUnitParser.summarizeResult(JUnitParser.java:125) at hudson.tasks.junit.JUnitResultArchiver.parseAndSummarize(JUnitResultArchiver.java:256) at hudson.tasks.junit.pipeline.JUnitResultsStepExecution.run(JUnitResultsStepExecution.java:63) at hudson.tasks.junit.pipeline.JUnitResultsStepExecution.run(JUnitResultsStepExecution.java:29) at org.jenkinsci.plugins.workflow.steps.SynchronousNonBlockingStepExecution.lambda$start$0(SynchronousNonBlockingStepExecution.java:47) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) Caused: java.io.IOException at io.jenkins.plugins.junit.storage.database.DatabaseTestResultStorage$RemotePublisherImpl.publish(DatabaseTestResultStorage.java:156) at hudson.tasks.junit.JUnitParser$StorageParseResultCallable.handle(JUnitParser.java:220) at hudson.tasks.junit.JUnitParser$StorageParseResultCallable.handle(JUnitParser.java:208) at hudson.tasks.junit.JUnitParser$ParseResultCallable.invoke(JUnitParser.java:187) at hudson.FilePath$FileCallableWrapper.call(FilePath.java:3492) at hudson.remoting.UserRequest.perform(UserRequest.java:211) at hudson.remoting.UserRequest.perform(UserRequest.java:54) at hudson.remoting.Request$2.run(Request.java:376) at hudson.remoting.InterceptingExecutorService.lambda$wrap$0(InterceptingExecutorService.java:78) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) at java.base/java.lang.Thread.run(Thread.java:834) Finished: FAILURE Help us localize this page

Anything else?

MySQL server is version 8.0.32 The Jenkins MySQL database plugin version 1.4 has mysql-connector-java-8.0.22.jar Since the plugin use an older version of mysql-connector, I thought the error might be incompatibility with that. So I tried to use the mysql-connector-java-8.0.32.jar to make sure it is compatible with MySQL server version 8.0.32, I still have same error.

letuyetvu3 commented 1 year ago

Hi timja, can you help with this issue? Thanks so much. Through the Manage Jenkins setting of Global Database, it shows we can connect to the MySQL database.