Pulsar retains messages until every subscription has acknowledged them. A subscription that stopped consuming — a decommissioned service, a crashed consumer, a test client nobody removed — holds the backlog open until the namespace quota is reached, at which point producers are throttled or rejected. AceMQ diagnoses this quickly and fixes the policy underneath.
The reported symptom is that producers have started failing or slowed dramatically, with no change on the producer side. The cause is a backlog quota policy reaching its limit with a producer_request_hold or producer_exception action. Finding which subscription is responsible requires per-subscription backlog inspection across the namespace, and the retention and TTL policies interact in ways that are easy to get wrong when someone tries to fix it under pressure.
Apache Pulsar clusters on Kubernetes or bare metal with multi-tenant namespaces, mixed subscription types, and geo-replication in some deployments.
AceMQ engineers inspect per-subscription backlog and acknowledgment position across the namespace to find the subscription holding retention open, and confirm whether it is a live consumer that has fallen behind or an abandoned one. Relief is applied appropriately — skipping or expiring the abandoned backlog, or addressing consumer throughput for a live one — and the policy set is then corrected so it fails visibly next time.
Producer throttling clears within the incident, and the subsequent policy work means abandoned subscriptions expire on their own and rising backlog raises an alert well before it reaches the quota.
Resolving cluster-wide write latency caused by bookie journal and ledger device contention, and restoring write quorum headroom.
Designing tenant, namespace, and policy structure so independent teams can share a Pulsar cluster without interfering with each other.
Whether you need architecture advisory, 24/7 support, or full managed services, AceMQ has the expertise to help.