yugabyte / yugabyte-db

YugabyteDB - the cloud native distributed SQL database for mission-critical applications.
https://www.yugabyte.com
Other
8.97k stars 1.07k forks source link

[YSQL] pg regress test NoClassDefFoundError, NoSuchMethodError #5509

Open jaki opened 4 years ago

jaki commented 4 years ago

Jira Link: DB-2416 Running on CentOS dev server, I sometimes see failures with log messages saying NoClassDefFoundError or NoSuchMethodError.

./yb_build.sh --java-test TestPgRegressPgMisc -n 1000 # on commit 9ce19409c
...
PASSED: iteration 1, 271 sec
PASSED: iteration 2, 322 sec
PASSED: iteration 3, 282 sec
PASSED: iteration 4, 303 sec
PASSED: iteration 5, 292 sec
PASSED: iteration 6, 321 sec
PASSED: iteration 7, 284 sec
PASSED: iteration 8, 306 sec
PASSED: iteration 9, 195 sec
PASSED: iteration 10, 205 sec
PASSED: iteration 11, 195 sec
FAILED: iteration 12, 177 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressPgMisc/2020-08-26T16_52_12/12.reports_combined_logs.txt.gz
FAILED: iteration 13, 27 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressPgMisc/2020-08-26T16_52_12/13.reports_combined_logs.txt.gz
FAILED: iteration 14, 17 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressPgMisc/2020-08-26T16_52_12/14.reports_combined_logs.txt.gz
FAILED: iteration 15, 14 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressPgMisc/2020-08-26T16_52_12/15.reports_combined_logs.txt.gz
...

~/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressPgMisc/2020-08-26T16_52_12/30.reports_combined_logs.txt.gz:

...
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running org.yb.pgsql.TestPgRegressPgMisc
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 3.781 s <<< FAILURE! - in org.yb.pgsql.TestPgRegressPgMisc
[ERROR] testPgRegressPgMisc(org.yb.pgsql.TestPgRegressPgMisc)  Time elapsed: 3.307 s  <<< ERROR!
java.lang.NoSuchMethodError: com.google.common.net.HostAndPort.getHostText()Ljava/lang/String;

[INFO]
[INFO] Results:
[INFO]
[ERROR] Errors:
[ERROR]   TestPgRegressPgMisc>BaseMiniClusterTest.setUpBefore:126->BaseMiniClusterTest.createMiniCluster:149->BaseMiniClusterTest.createMiniCluster:164->BaseMiniClusterTest.createMiniCluster:196 » NoSuchMethod
[INFO]
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  8.160 s
[INFO] Finished at: 2020-08-26T17:50:21-07:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.0:test (default-cli) on project yb-pgsql: There are test failures.
[ERROR]
[ERROR] Please refer to /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressPgMisc/2020-08-26T16_52_12/30.reports for the individual test results.
[ERROR] Please refer to dump files (if any exist) [date]-jvmRun[N].dump, [date].dumpstream and [date]-jvmRun[N].dumpstream.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[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/MojoFailureException

real  0m12.839s
user  0m15.940s
sys 0m0.693s
[2020-08-26T17:50:21 common-test-env.sh:1535 run_java_test] Maven exited with code 1
...

I found one old internal build log (also centos, debug, gcc):

...
constituent[41]: file:/opt/maven/apache-maven-3.6.3/lib/maven-slf4j-provider-3.6.3.jar
constituent[42]: file:/opt/maven/apache-maven-3.6.3/lib/jansi-1.17.1.jar
---------------------------------------------------
Exception in thread "main" java.lang.NoSuchMethodError: javax.net.ssl.SSLParameters.setApplicationProtocols([Ljava/lang/String;)V
        at sun.security.ssl.SSLSocketImpl.getSSLParameters(SSLSocketImpl.java:2641)
        at sun.security.ssl.SSLAlgorithmConstraints.<init>(SSLAlgorithmConstraints.java:79)
        at sun.security.ssl.Handshaker.init(Handshaker.java:307)
        at sun.security.ssl.Handshaker.<init>(Handshaker.java:257)
        at sun.security.ssl.ClientHandshaker.<init>(ClientHandshaker.java:169)
        at sun.security.ssl.SSLSocketImpl.initHandshaker(SSLSocketImpl.java:1342)
        at sun.security.ssl.SSLSocketImpl.doneConnect(SSLSocketImpl.java:708)
        at sun.security.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:583)
        at sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:110)
        at org.apache.maven.wagon.providers.http.httpclient.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:393)
        at org.apache.maven.wagon.providers.http.httpclient.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:384)
        at org.apache.maven.wagon.providers.http.httpclient.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
        at org.apache.maven.wagon.providers.http.httpclient.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:374)
        at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:393)
        at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
        at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.ProtocolExec.execute(ProtocolExec.java:186)
        at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.RetryExec.execute(RetryExec.java:89)
        at org.apache.maven.wagon.providers.http.httpclient.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
        at org.apache.maven.wagon.providers.http.httpclient.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
        at org.apache.maven.wagon.providers.http.httpclient.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
        at org.apache.maven.wagon.providers.http.wagon.shared.AbstractHttpClientWagon.execute(AbstractHttpClientWagon.java:1002)
        at org.apache.maven.wagon.providers.http.wagon.shared.AbstractHttpClientWagon.resourceExists(AbstractHttpClientWagon.java:873)
        at org.apache.maven.wagon.providers.http.wagon.shared.AbstractHttpClientWagon.resourceExists(AbstractHttpClientWagon.java:862)
        at org.eclipse.aether.transport.wagon.WagonTransporter$PeekTaskRunner.run(WagonTransporter.java:512)
        at org.eclipse.aether.transport.wagon.WagonTransporter.execute(WagonTransporter.java:435)
        at org.eclipse.aether.transport.wagon.WagonTransporter.peek(WagonTransporter.java:406)
        at org.eclipse.aether.connector.basic.BasicRepositoryConnector$PeekTaskRunner.runTask(BasicRepositoryConnector.java:390)
        at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:364)
        at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:75)
        at org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute(BasicRepositoryConnector.java:644)
        at org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(BasicRepositoryConnector.java:262)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:499)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:401)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:229)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:207)
        at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.loadPom(DefaultArtifactDescriptorReader.java:240)
        at org.apache.maven.repository.internal.DefaultArtifactDescriptorReader.readArtifactDescriptor(DefaultArtifactDescriptorReader.java:171)
        at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.resolveCachedArtifactDescriptor(DefaultDependencyCollector.java:541)
        at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.getArtifactDescriptorResult(DefaultDependencyCollector.java:524)
        at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:412)
        at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.processDependency(DefaultDependencyCollector.java:365)
        at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.process(DefaultDependencyCollector.java:352)
        at org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector.collectDependencies(DefaultDependencyCollector.java:254)
        at org.eclipse.aether.internal.impl.DefaultRepositorySystem.collectDependencies(DefaultRepositorySystem.java:284)
        at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:169)
        at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies(LifecycleDependencyResolver.java:243)
        at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies(LifecycleDependencyResolver.java:147)
        at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved(MojoExecutor.java:248)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:202)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:957)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:289)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:193)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)

real    0m3.611s
user    0m6.970s
sys     0m0.281s
[2020-08-10T19:00:52 common-test-env.sh:1535 run_java_test] Maven exited with code 1
[2020-08-10T19:00:52 common-test-env.sh:1540 run_java_test] Warning: test log path not found: /path/to/jenkins/jenkins-github-yugabyte-db-centos-master-gcc-debug-1157/java/yb-pgsql/target/surefire-reports_org.yb.pgsql.TestPgAuthorization__testMultiNodeOwnershipChanges/org.yb.pgsql.TestPgAuthorization-output.txt, not re-trying the test.
...

Here's the NoClassDefFound one:

./yb_build.sh --java-test TestPgRegressJoin # this was on a PR branch
...
PASSED: iteration 20, 127 sec
PASSED: iteration 21, 129 sec
FAILED: iteration 22, 32 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/22.reports_combined_logs.txt.gz
FAILED: iteration 23, 11 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/23.reports_combined_logs.txt.gz
FAILED: iteration 24, 15 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/24.reports_combined_logs.txt.gz
FAILED: iteration 25, 17 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/25.reports_combined_logs.txt.gz
FAILED: iteration 26, 12 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/26.reports_combined_logs.txt.gz
FAILED: iteration 27, 12 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/27.reports_combined_logs.txt.gz
FAILED: iteration 28, 15 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/28.reports_combined_logs.txt.gz
FAILED: iteration 29, 25 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/29.reports_combined_logs.txt.gz
FAILED: iteration 30, 17 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/30.reports_combined_logs.txt.gz
FAILED: iteration 31, 19 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/31.reports_combined_logs.txt.gz
FAILED: iteration 32, 18 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/32.reports_combined_logs.txt.gz
FAILED: iteration 33, 14 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/33.reports_combined_logs.txt.gz
FAILED: iteration 34, 21 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/34.reports_combined_logs.txt.gz
FAILED: iteration 35, 16 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/35.reports_combined_logs.txt.gz
FAILED: iteration 36, 24 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/36.reports_combined_logs.txt.gz
FAILED: iteration 37, 14 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/37.reports_combined_logs.txt.gz
FAILED: iteration 38, 14 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/38.reports_combined_logs.txt.gz
FAILED: iteration 39, 14 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/39.reports_combined_logs.txt.gz
FAILED: iteration 40, 18 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/40.reports_combined_logs.txt.gz
FAILED: iteration 41, 17 sec; test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/41.reports_combined_logs.txt.gz
PASSED: iteration 42, 199 sec
PASSED: iteration 43, 232 sec
...

~/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/22.reports_combined_logs.txt.gz:

...
+ /path/to/repo/build-support/run-test.sh yb-pgsql org.yb.pgsql.TestPgRegressJoin
Test is running on host HOST, arguments: yb-pgsql org.yb.pgsql.TestPgRegressJoin
Details of third-party dependencies:
    YB_THIRDPARTY_DIR: /opt/yb-build/thirdparty/yugabyte-db-thirdparty-v20200707012818-49ca690c1f-centos (from file '/path/to/repo/build/debug-gcc-dynamic-ninja/thirdparty_path.txt')
    YB_LINUXBREW_DIR: /opt/yb-build/brew/linuxbrew-20181203T161736v9 (from environment)
    YB_THIRDPARTY_URL: https://github.com/yugabyte/yugabyte-db-thirdparty/releases/download/v20200707012818-49ca690c1f/yugabyte-db-thirdparty-v20200707012818-49ca690c1f-centos.tar.gz (from file '/path/to/repo/build/debug-gcc-dynamic-ninja/thirdparty_url.txt')
    YB_DOWNLOAD_THIRDPARTY: 1
    NO_REBUILD_THIRDPARTY: 1
[2020-08-26T16:45:12 common-build-env.sh:667 set_mvn_parameters] The result of set_mvn_parameters: YB_MVN_LOCAL_REPO=/path/to/home/.m2/repository, YB_MVN_SETTINGS_PATH=/path/to/home/.m2/settings.xml
Saving YB_MVN_LOCAL_REPO to /path/to/repo/build/debug-gcc-dynamic-ninja/mvn_repo
[2020-08-26T16:45:12 common-test-env.sh:1510 run_java_test] Using surefire reports directory: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/22.reports
[2020-08-26T16:45:12 common-test-env.sh:1511 run_java_test] Test log path: /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/22.reports/org.yb.pgsql.TestPgRegressJoin-output.txt
+ mvn -Dtest=org.yb.pgsql.TestPgRegressJoin --projects yb-pgsql -DtempDir=surefire2020-08-26T16_45_12_21561_3773_30626_4083 -Dmaven.javadoc.skip --batch-mode -DbinDir=/path/to/repo/build/debug-gcc-dynamic-ninja/bin -Dmaven.repo.local=/path/to/home/.m2/repository -Dyb.thirdparty.dir=/opt/yb-build/thirdparty/yugabyte-db-thirdparty-v20200707012818-49ca690c1f-centos -Dyb.surefire.reports.directory=/path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/22.reports surefire:test
[INFO] Scanning for projects...
[INFO] 
[INFO] --------------------------< org.yb:yb-pgsql >---------------------------
[INFO] Building YB PostgreSQL Support 0.8.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-surefire-plugin:2.22.0:test (default-cli) @ yb-pgsql ---
[INFO] 
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running org.yb.pgsql.TestPgRegressJoin
[ERROR] Tests run: 4, Failures: 0, Errors: 4, Skipped: 0, Time elapsed: 24.378 s <<< FAILURE! - in org.yb.pgsql.TestPgRegressJoin
[ERROR] testPgRegressJoin(org.yb.pgsql.TestPgRegressJoin)  Time elapsed: 24.023 s  <<< ERROR!
java.lang.NoClassDefFoundError: org/yb/client/YRpc$HasKey
Caused by: java.lang.ClassNotFoundException: org.yb.client.YRpc$HasKey

[ERROR] testPgRegressJoin(org.yb.pgsql.TestPgRegressJoin)  Time elapsed: 24.025 s  <<< ERROR!
java.lang.NoClassDefFoundError: org/yb/BaseYBTest$1$2
Caused by: java.lang.ClassNotFoundException: org.yb.BaseYBTest$1$2

[ERROR] org.yb.pgsql.TestPgRegressJoin  Time elapsed: 24.025 s  <<< ERROR!
java.lang.NoClassDefFoundError: org/yb/util/CoreFileUtil$CoreFileMatchMode
Caused by: java.lang.ClassNotFoundException: org.yb.util.CoreFileUtil$CoreFileMatchMode

[ERROR] org.yb.pgsql.TestPgRegressJoin  Time elapsed: 24.025 s  <<< ERROR!
java.lang.NoClassDefFoundError: org/yb/util/CoreFileUtil$CoreFileMatchMode

[INFO] 
[INFO] Results:
[INFO] 
[ERROR] Errors: 
[ERROR] org.yb.pgsql.TestPgRegressJoin.org.yb.pgsql.TestPgRegressJoin
[ERROR]   Run 1: TestPgRegressJoin>BasePgSQLTest.tearDownAfter:447->BaseMiniClusterTest.destroyMiniCluster:252 » NoClassDefFound
[ERROR]   Run 2: TestPgRegressJoin>BaseMiniClusterTest.tearDownAfterClass:355->BaseMiniClusterTest.destroyMiniCluster:252 » NoClassDefFound
[INFO] 
[ERROR] org.yb.pgsql.TestPgRegressJoin.testPgRegressJoin(org.yb.pgsql.TestPgRegressJoin)
[ERROR]   Run 1: TestPgRegressJoin>BaseMiniClusterTest.setUpBefore:126->BaseMiniClusterTest.createMiniCluster:149->BaseMiniClusterTest.createMiniCluster:164->BaseMiniClusterTest.createMiniCluster:203 » NoClassDefFound
[ERROR]   Run 2: TestPgRegressJoin.testPgRegressJoin » NoClassDefFound org/yb/BaseYBTest$1$2
[INFO] 
[INFO] 
[ERROR] Tests run: 2, Failures: 0, Errors: 2, Skipped: 0
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  27.144 s
[INFO] Finished at: 2020-08-26T16:45:42-07:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.0:test (default-cli) on project yb-pgsql: There are test failures.
[ERROR] 
[ERROR] Please refer to /path/to/home/logs/repeat_unit_test/yb-pgsql/org.yb.pgsql.TestPgRegressJoin/2020-08-26T15_58_29/22.reports for the individual test results.
[ERROR] Please refer to dump files (if any exist) [date]-jvmRun[N].dump, [date].dumpstream and [date]-jvmRun[N].dumpstream.
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[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/MojoFailureException

real    0m29.759s
user    0m16.041s
sys 0m2.745s
[2020-08-26T16:45:42 common-test-env.sh:1535 run_java_test] Maven exited with code 1
...

I did not find this NoClassDefFoundError in old internal build logs (for centos, debug, gcc).

Since these errors are particularly rare for internal builds yet somewhat common for my centos dev server, I'm inclined to think it is a dev server problem. More data points would help.

frozenspider commented 4 years ago

Could not reproduce this on my CentOS dev server on 9ce19409c using

./yb_build.sh --java-test TestPgRegressPgMisc -n 1000 --tp 1 -- --skip-log-compression

Not a single iteration failed

jaki commented 3 years ago

I've been seeing the NoClassDefFound a lot more often these days on local runs. One recent example is org.yb.pgsql.TestPgRegressIndex#testPgRegressIndex.

pkj415 commented 3 years ago

Seeing something similar on my mac with a clang based debug build -

[ERROR] ~/code/yugabyte-db/java/yb-cql/src/test/java/org/yb/cql/TestSystemTables.java:[193,54] cannot access MiniYBClusterParameters
[ERROR]   class file for MiniYBClusterParameters not found
[ERROR] -> [Help 1]

This happens even with a clean build

pkj415 commented 3 years ago

As a workaround, try using everything on top of this commit - 9d20f92e50e0de999a64e8be3bfcb3f8946761d8