fanimali opened a new issue, #24914: URL: https://github.com/apache/pulsar/issues/24914
### Search before reporting - [x] I searched in the [issues](https://github.com/apache/pulsar/issues) and found nothing similar. ### Read release policy - [x] I understand that [unsupported versions](https://pulsar.apache.org/contribute/release-policy/#supported-versions) don't get bug fixes. I will attempt to reproduce the issue on a supported version of Pulsar client and Pulsar broker. ### User environment Apache pulsar 4.0.6, broker running on the same Ubuntu22 box. 2 clusters geo replicated . ### Issue Description When enabling 2-way geo replication on a pulsar cluster (clusterA) to replicate messages to a second cluster (clusterB) and clusterA has at least one topic accessed in exclusive mode by one producer, the second cluster (clusterB) doesn't replicate the messages to the first cluster (clusterA) and throws an error saying there is alredy a topic with exclusive access: the internal producer in charge of geo replication, clashes with the client app producer that has exclusive access. ### Error messages ```text `pulsar-broker-ip-10-166-67-29.log:2025-10-28T17:41:00,261+0000 [pulsar-io-3-4] ERROR org.apache.pulsar.client.impl.ProducerImpl - [persistent://tn2/ns2/tpc2] [pulsar.repl.pulgeo2-->pulgeo1] Failed to create producer: {"errorMsg":"org.apache.pulsar.broker.service.BrokerServiceException$ProducerBusyException: Topic has an existing exclusive producer: pulgeo1-14-45","reqId":4267594562146349661, "remote":"ip-10-166-70-175.us-west-2.compute.internal/10.166.70.175:6650", "local":"/10.166.67.29:40330"} pulsar-broker-ip-10-166-67-29.log:2025-10-28T17:41:00,261+0000 [pulsar-io-3-4] WARN org.apache.pulsar.broker.service.AbstractReplicator - [persistent://tn2/ns2/tpc2 | pulgeo2-->pulgeo1] Failed to create remote producer (org.apache.pulsar.client.api.PulsarClientException$ProducerBusyException: {"errorMsg":"org.apache.pulsar.broker.service.BrokerServiceException$ProducerBusyException: Topic has an existing exclusive producer: pulgeo1-14-45","reqId":4267594562146349661, "remote":"ip-10-166-70-175.us-west-2.compute.internal/10.166.70.175:6650", "local":"/10.166.67.29:40330"}), retrying in 24.743 s` ``` ### Reproducing the issue this can be reproduced easily following the steps below: - on clusterA: create a topic and start a producer application that accesses the topic in Exclusive or ExclusiveWithFencing mode: ".accessMode(ProducerAccessMode.Exclusive)" - on clusterA: configure the namespace to be geo replicated to clusterB: "pa namespaces set-clusters --clusters=clusterA,clusterB" - on clusterB: create the replicated namespace but don't establish the 2-way replication: "pa namespaces create --clusters=clusterB" - on clusterB: verify that the messages produced by the exclusive producer are replicated to clusterB - on clusterB: enable 2-way replication: "pa namespaces set-clusters --clusters=clusterA,clusterB" and verify that the error message is thrown in the broker logs. - on clusterB: also verify that the topics stats show "connected=false" in the replication block. ### Additional information The expected behaviour is that geo replication allows the use of exclusive producers on the replicated topics. But the mechanics of geo replication involves the creation of internal producers that take care of geo replicating messages. These internal producers conflict with the exclusive producers of client application. ### Are you willing to submit a PR? - [ ] I'm willing to submit a PR! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
