Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FLAKY TEST] :bookkeeper-server:test failed with SIGSEGV on CI #3033

Closed
dlg99 opened this issue Feb 10, 2022 · 3 comments
Closed

[FLAKY TEST] :bookkeeper-server:test failed with SIGSEGV on CI #3033

dlg99 opened this issue Feb 10, 2022 · 3 comments

Comments

@dlg99
Copy link
Contributor

dlg99 commented Feb 10, 2022

BUG REPORT

Test failed

org.apache.bookkeeper.bookie.CheckpointOnNewLedgersTest

  Test testCheckpoint PASSED
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f6668000840, pid=8491, tid=0x00007f66661e0700
#
# JRE version: OpenJDK Runtime Environment (Zulu 8.60.0.21-CA-linux64) (8.0_322-b06) (build 1.8.0_322-b06)
# Java VM: OpenJDK 64-Bit Server VM (25.322-b06 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  0x00007f6668000840
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/runner/work/bookkeeper/bookkeeper/bookkeeper-server/hs_err_pid8491.log
#
# If you would like to submit a bug report, please visit:
#   http://www.azul.com/support/
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007efc84000840, pid=8605, tid=0x00007efc81fee700
#
# JRE version: OpenJDK Runtime Environment (Zulu 8.60.0.21-CA-linux64) (8.0_322-b06) (build 1.8.0_322-b06)
# Java VM: OpenJDK 64-Bit Server VM (25.322-b06 mixed mode linux-amd64 compressed oops)
# Problematic frame:
# C  0x00007efc84000840
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/runner/work/bookkeeper/bookkeeper/bookkeeper-server/hs_err_pid8605.log
#
# If you would like to submit a bug report, please visit:
#   http://www.azul.com/support/
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
Process 'Gradle Test Executor 20' finished with non-zero exit value 134
This problem might be caused by incorrect test process configuration.
Please refer to the test execution section in the User Manual at https://docs.gradle.org/7.3.3/userguide/java_testing.html#sec:test_execution
org.gradle.process.internal.ExecException: Process 'Gradle Test Executor 20' finished with non-zero exit value 134
This problem might be caused by incorrect test process configuration.
Please refer to the test execution section in the User Manual at https://docs.gradle.org/7.3.3/userguide/java_testing.html#sec:test_execution
	at org.gradle.api.internal.tasks.testing.worker.ForkingTestClassProcessor.stop(ForkingTestClassProcessor.java:183)
	at org.gradle.api.internal.tasks.testing.processors.RestartEveryNTestClassProcessor.endBatch(RestartEveryNTestClassProcessor.java:77)
	at org.gradle.api.internal.tasks.testing.processors.RestartEveryNTestClassProcessor.processTestClass(RestartEveryNTestClassProcessor.java:55)
	at sun.reflect.GeneratedMethodAccessor427.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.FailureHandlingDispatch.dispatch(FailureHandlingDispatch.java:30)
	at org.gradle.internal.dispatch.AsyncDispatch.dispatchMessages(AsyncDispatch.java:87)
	at org.gradle.internal.dispatch.AsyncDispatch.access$000(AsyncDispatch.java:36)
	at org.gradle.internal.dispatch.AsyncDispatch$1.run(AsyncDispatch.java:71)
	at org.gradle.internal.concurrent.InterruptibleRunnable.run(InterruptibleRunnable.java:42)
	at org.gradle.internal.operations.CurrentBuildOperationPreservingRunnable.run(CurrentBuildOperationPreservingRunnable.java:42)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:48)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:61)
	at java.lang.Thread.run(Thread.java:750)

org.apache.bookkeeper.bookie.CookieTest
...
FAILURE: Build failed with an exception.

* What went wrong:
> Task :bookkeeper-server:test FAILED
Execution failed for task ':bookkeeper-server:test'.

Expected behavior

repeatedly passing test

@dlg99
Copy link
Contributor Author

dlg99 commented Feb 11, 2022

hard to say without looking at .../bookkeeper-server/hs_err_pid8605.log but there is a chance this one is the same as #3040

@nicoloboschi is it possible to pick up logs like hs_err_pid.*\.log (if exists) from any directory in case of the test failure on CI and package with other logs for review? Unfortunately RocksDB segfaults end up creating these in working dir which happened to be bookkeeper-server/

# An error report file with more information is saved as:
# /home/runner/work/bookkeeper/bookkeeper/bookkeeper-server/hs_err_pid8605.log

@nicoloboschi
Copy link
Contributor

maybe you need something like this: https://github.com/apache/pulsar/blob/60ef5e983e5e8956bd0b602b5741bd6255c6258a/.github/workflows/ci-unit-broker-client-api.yaml#L86-L99

alternatively, quick and dirty,

run: ./gradlew :tests:backward-compat:current-server-old-clients:test ${GRADLE_ARGS} || (tail -n +1 tests/backward-compat/current-server-old-clients/build/reports/tests/test/classes/* && tail -n +1 tests/backward-compat/current-server-old-clients/build/container-logs/**/* && exit 1)

dlg99 pushed a commit that referenced this issue Feb 14, 2022
### Motivation

I found many flaky-test like  #3031 #3034 #3033.
Because many flaky tests are actually production code issues so I think it's a good way to add flaky-test template to track them 

### Changes

- Add flaky-test template.



Reviewers: Andrey Yegorov <None>

This closes #3035 from mattisonchao/template_flaky_test
StevenLuMT pushed a commit to StevenLuMT/bookkeeper that referenced this issue Feb 16, 2022
### Motivation

I found many flaky-test like  apache#3031 apache#3034 apache#3033.
Because many flaky tests are actually production code issues so I think it's a good way to add flaky-test template to track them 

### Changes

- Add flaky-test template.



Reviewers: Andrey Yegorov <None>

This closes apache#3035 from mattisonchao/template_flaky_test
@shoothzj
Copy link
Member

shoothzj commented May 4, 2024

Now we switch to maven, I think we can closed it.

@shoothzj shoothzj closed this as completed May 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants