Chris Hamons
05/05/2026, 3:39 PM./gradlew :pulsar-broker:test --tests "org.apache.pulsar.broker.service.persistent.PersistentDispatcherMultipleConsumersTest.testTopicDeleteIfConsumerSetMismatchConsumerList"
without any changes and it is failing with:
Gradle suite > Gradle test > org.apache.pulsar.broker.service.persistent.PersistentDispatcherMultipleConsumersTest > testTopicDeleteIfConsumerSetMismatchConsumerList FAILED
org.testng.internal.thread.ThreadTimeoutException: Method org.apache.pulsar.broker.service.persistent.PersistentDispatcherMultipleConsumersTest.testTopicDeleteIfConsumerSetMismatchConsumerList() didn't finish within the time-out 30000
at java.base@21.0.11/jdk.internal.misc.Unsafe.park(Native Method)
I assume we need a local pulsar cluster to run tests tests against?
I have docker running locally (but nothing stood up). tests/README.md talks about tests using Test Containers, but I'm not sure if that is for the integration tests only.
I don't see any instructions on https://pulsar.apache.org/contribute/setup-building/ that covers a docker-compose I need to stand up to run unit tests? I see a number of potential options?Chris Hamons
05/05/2026, 3:56 PMChris Hamons
05/05/2026, 4:20 PM$ pwd
/Users/donblas/Programming/Projects/pulsar/tests/compose/simple
docker compose up -d
WARN[0000] /Users/donblas/Programming/Projects/pulsar/tests/compose/simple/docker-compose.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 6/6
✘ bk2 Error context canceled 0.8s
✘ pulsar1 Error context canceled 0.8s
✘ zk Error context canceled 0.8s
✘ init Error pull access denied for apachepulsar/pulsar-test-latest-version, repository does not exist or may require 'docker login': denied: requested access to the resource is denied 0.8s
✘ bk1 Error context canceled 0.8s
✘ bk3 Error context canceledLari Hotari
05/05/2026, 4:20 PMChris Hamons
05/05/2026, 4:21 PMtestRaceTrackDelayedDelivery FAILED
org.apache.pulsar.client.admin.PulsarAdminException$ServerSideErrorException:
--- An unexpected error occurred in the server ---
Message: {"errorMsg":"org.apache.bookkeeper.mledger.ManagedLedgerException: Not enough non-faulty bookies available error code: -6","reqId":1296992488924910610, "remote":"localhost/127.0.0.1:59564", "local":"/127.0.0.1:59567"}
Stacktrace:
org.apache.pulsar.client.api.PulsarClientException$BrokerPersistenceException: {"errorMsg":"org.apache.bookkeeper.mledger.ManagedLedgerException: Not enough non-faulty bookies available error code: -6","reqId":1296992488924910610, "remote":"localhost/127.0.0.1:59564", "local":"/127.0.0.1:59567"}
at org.apache.pulsar.client.impl.ClientCnx.getPulsarClientException(ClientCnx.java:1612)Lari Hotari
05/05/2026, 4:22 PMLari Hotari
05/05/2026, 4:26 PM❯ java -version
openjdk version "21.0.11" 2026-04-21 LTS
OpenJDK Runtime Environment Corretto-21.0.11.10.1 (build 21.0.11+10-LTS)
OpenJDK 64-Bit Server VM Corretto-21.0.11.10.1 (build 21.0.11+10-LTS, mixed mode, sharing)Lari Hotari
05/05/2026, 4:29 PM/pulsarbot rerun will trigger a rerun if CI happens to fail due to a flaky test. The benefit of Personal CI is that you have full control of running the CI pipeline. For apache/pulsar PRs, a maintainer has to approve each run after a change.Lari Hotari
05/05/2026, 4:30 PMapachepulsar/pulsar-test-latest-version image, that is required by integration tests. The image is built separately. There are instructions in https://github.com/apache/pulsar/blob/master/tests/README.mdChris Hamons
05/05/2026, 4:32 PM$ java -version
openjdk version "21.0.11" 2026-04-21 LTS
OpenJDK Runtime Environment Corretto-21.0.11.10.1 (build 21.0.11+10-LTS)
OpenJDK 64-Bit Server VM Corretto-21.0.11.10.1 (build 21.0.11+10-LTS, mixed mode, sharing)Chris Hamons
05/05/2026, 4:32 PMChris Hamons
05/05/2026, 4:38 PMChris Hamons
05/05/2026, 4:38 PMLari Hotari
05/05/2026, 4:40 PM