Summary
The ConsumerConfig interface does not expose replicateSubscriptionState, which is needed for geo-replication failover scenarios where subscription cursor state should be synchronized across clusters.
Context
The underlying C++ client supports replicateSubscriptionStateEnabled as a consumer configuration option, and it is exposed in other clients. The Node.js client wraps the C++ library, so the capability should be available at the binding layer, it just needs to be surfaced in the ConsumerConfig interface and passed through to the C++ ConsumerConfiguration.
Expected API
export interface ConsumerConfig {
// ... existing properties ...
replicateSubscriptionState?: boolean;
}
When set to true, the broker synchronizes acknowledgment state for this subscription across geo-replicated clusters, enabling seamless consumer failover without reprocessing the backlog.
Summary
The ConsumerConfig interface does not expose
replicateSubscriptionState, which is needed for geo-replication failover scenarios where subscription cursor state should be synchronized across clusters.Context
The underlying C++ client supports
replicateSubscriptionStateEnabledas a consumer configuration option, and it is exposed in other clients. The Node.js client wraps the C++ library, so the capability should be available at the binding layer, it just needs to be surfaced in the ConsumerConfig interface and passed through to the C++ ConsumerConfiguration.Expected API
When set to true, the broker synchronizes acknowledgment state for this subscription across geo-replicated clusters, enabling seamless consumer failover without reprocessing the backlog.