Flaky-test: ReplicatorGlobalNSTest.cleanup
- Dominant language
- Java
- Stars
- 15.3k
- Forks
- 3.8k
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 160
Description
### Search before reporting
- [x] I searched in the [issues](https://github.com/apache/pulsar/issues) and found nothing similar.
### Example failure
https://github.com/apache/pulsar/actions/runs/18156259802/job/51716044165#step:11:1476
### Exception stacktrace
```text
org.testng.internal.thread.ThreadTimeoutException: Method org.apache.pulsar.broker.service.ReplicatorGlobalNSTest.cleanup() didn't finish within the time-out 300000
at java.base/java.lang.Object.wait0(Native Method)
at java.base/java.lang.Object.wait(Object.java:366)
at java.base/java.lang.Object.wait(Object.java:339)
at io.netty.util.concurrent.DefaultPromise.awaitUninterruptibly(DefaultPromise.java:289)
at io.netty.channel.DefaultChannelPromise.awaitUninterruptibly(DefaultChannelPromise.java:137)
at io.netty.channel.DefaultChannelPromise.awaitUninterruptibly(DefaultChannelPromise.java:30)
at org.apache.bookkeeper.proto.PerChannelBookieClient.closeInternal(PerChannelBookieClient.java:1127)
at org.apache.bookkeeper.proto.PerChannelBookieClient.close(PerChannelBookieClient.java:1109)
at org.apache.bookkeeper.proto.DefaultPerChannelBookieClientPool.close(DefaultPerChannelBookieClientPool.java:156)
at org.apache.bookkeeper.proto.BookieClientImpl.close(BookieClientImpl.java:610)
at org.apache.bookkeeper.client.BookKeeper.close(BookKeeper.java:1450)
at org.apache.pulsar.broker.ManagedLedgerClientFactory.close(ManagedLedgerClientFactory.java:228)
at org.apache.pulsar.broker.PulsarService.closeAsync(PulsarService.java:611)
at org.apache.pulsar.broker.PulsarService.closeAsync(PulsarService.java:494)
at org.apache.pulsar.broker.PulsarService.close(PulsarService.java:465)
at org.apache.pulsar.broker.service.ReplicatorTestBase.cleanup(ReplicatorTestBase.java:455)
at org.apache.pulsar.broker.service.ReplicatorGlobalNSTest.cleanup(ReplicatorGlobalNSTest.java:84)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:139)
at org.testng.internal.invokers.InvokeMethodRunnable.runOne(InvokeMethodRunnable.java:47)
at org.testng.internal.invokers.InvokeMethodRunnable.call(InvokeMethodRunnable.java:76)
at org.testng.internal.invokers.InvokeMethodRunnable.call(InvokeMethodRunnable.java:11)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
```
### Are you willing to submit a PR?
- [ ] I'm willing to submit a PR!
Contributor guide
Research direction
Start by running ReplicatorGlobalNSTest and reproducing the cleanup timeout from the linked GitHub Actions failure. Read ReplicatorGlobalNSTest.cleanup, ReplicatorTestBase.cleanup, and the shutdown stack through PulsarService.close and BookKeeper.close. Done means the test cleanup completes reliably within its timeout.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- distributed-systems, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100