[Bug] getPartitionsForTopic Cause Signal 11 SIGSEGV (Segmentation Fault)

未关闭
#454 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
需要澄清
活跃度
冷清
技术栈
cpp
领域
api

调研方向

首先,使用 C++ 客户端 3.6.0 和 broker 3.0.4 重现报告的间歇性崩溃,以 Client::getPartitionsForTopic 和 getPartitionsForTopicAsync 作为入口点。检查 stack trace 所示位置的故障,并比较针对不同 topic 的重复调用。完成标准是分区查找能够始终返回正确结果且不发生 SIGSEGV。

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

描述

Search before asking
  • I searched in the issues and found nothing similar.
Version

CPP Client: 3.6.0
pulsar broker: 3.0.4

Minimal reproduce step

1、create pulsar client
2、invoke client getPartitionsForTopic to get partition

What did you expect to see?

can get partition correctlly

What did you see instead?

Signal ID:11 Pid:920
Time:1731978465
/opt/lib/libpulsar.so(_ZN6pulsar6Client26getPartitionsForTopicAsyncERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt8functionIFvNS_6ResultERKSt6vectorIS6_SaIS6_EEEE+0x10)[0xffff17ac16d8]
/opt/lib/libpulsar.so(_ZN6pulsar6Client21getPartitionsForTopicERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERSt6vectorIS6_SaIS6_EE+0xd8)[0xffff17ac5df0]

Anything else?

This issue does not occur every time; it happens only with a certain probability.

Are you willing to submit a PR?
  • I'm willing to submit a PR!
主要语言
C++
星标
72
派生
93
PR 合并指标
30 天内没有已合并 PR

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

apache/pulsar-client-cpp 的其他 Issue

查看 apache/pulsar-client-cpp 的全部 Issue

相似的 Issue

更多 C++ Issue

把新 issue 发到你的邮箱

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