apache / apache/pulsar-client-cpp

disableReplication in MessageBuilder does not work in PulsarClient C++ and Java

未关闭
#81 4 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
C++
星标
71
派生
90
平均合并
2 小时 33 分钟
30 天内合并 PR
3

描述

**Describe the bug**
Data is still replicated when disableReplication is enabled

**To Reproduce**
Steps to reproduce the behavior:
1. Setup Geo-Replication with 3 cluster(A,B,C)
2. Set disableReplication = true in MessageBuilder
```
Message msg = MessageBuilder().setContent("repl").disableReplication(true).build();
```
3. Producer create connect in cluster C and send ```Message msg```
```
producer.sendAsync(msg, notifySendMessage);
```
**Actual output is consumer**
1. Cluster A
```
Received message: repl
```
2. Cluster A
```
Received message: repl
```
3. Cluster C
```
Received message: repl
```
**Expected output is**
1. Cluster A
```
```
2. Cluster A
```
```
3. Cluster C
```
Received message: repl
```

Pulsar version: 2.3.0

贡献指南

打开贡献指南

调研方向

Start by tracing MessageBuilder.disableReplication(true) through the C++ client and the producer.sendAsync path, using the three-cluster geo-replication steps to reproduce the behavior. Done means a message sent from cluster C remains in C and is not received by clusters A or B when replication is disabled.

由索引模型根据 Issue 内容生成。

评估

技术栈
cpp, java
领域
distributed-systems
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。