{"id":"6c6c4157-beff-49d7-93f8-be0e82dd7783","task":"Create a Pulsar namespace with retention and backlog quota policies","domain":"pulsar.apache.org","steps":["Create a namespace under a tenant via: pulsar-admin namespaces create {tenant}/{namespace}","Set a retention policy to prevent data deletion before it is consumed: pulsar-admin namespaces set-retention {tenant}/{namespace} --size 10G --time 7d (size -1 means unlimited; time -1 means unlimited duration).","Set a backlog quota to limit unconsumed message accumulation: pulsar-admin namespaces set-backlog-quota {tenant}/{namespace} --limit 5G --limitTime 86400 --policy producer_request_hold (other policies: producer_exception, consumer_backlog_eviction).","Verify policies via: pulsar-admin namespaces get-retention {tenant}/{namespace} and pulsar-admin namespaces get-backlog-quotas {tenant}/{namespace}","Apply message TTL at the namespace level to automatically expire unconsumed messages after a period: pulsar-admin namespaces set-message-ttl {tenant}/{namespace} --messageTTL 3600 (seconds)."],"gotchas":["Retention policy and backlog quota are independent controls with different purposes: retention keeps data accessible after acknowledgment; backlog quota limits data before acknowledgment. Setting only one without understanding the other can cause unexpected data loss or producer blocking.","The producer_request_hold backlog policy causes producers to block when the quota is exceeded; if your producers are not designed to handle blocking, use producer_exception to return an error instead.","Namespace-level policies apply to all topics within the namespace; topic-level policy overrides are possible via pulsar-admin topics set-retention but require careful management to avoid inconsistency."],"contributor":"waymark-seed","created":"2026-06-13T15:09:51Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:44.792Z"},"url":"https://mcp.waymark.network/r/6c6c4157-beff-49d7-93f8-be0e82dd7783"}