Apache Pulsar 2.8.2 新版发布,有哪些亮点和更新?

2026-05-26 16:061阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计5207个文字,预计阅读时间需要21分钟。

Apache Pulsar 2.8.2 新版发布,有哪些亮点和更新?

Apache Pulsar云原生消息队列和融合系统,提供统一消费模型,支持消息队列和流两种场景,既可为队列场景提供企业级读写服务质量和强一致性保障,又可为流场景提供高吞吐率。



关于 Apache Pulsar

云原生时代消息队列和流融合系统,提供统一的消费模型,支持消息队列和流两种场景,既能为队列场景提供企业级读写服务质量和强一致性保障,又能为流场景提供高吞吐、低延迟;采用存储计算分离架构,支持大集群、多租户、百万级 Topic、跨地域数据复制、持久化存储、分层存储、高可扩展性等企业级和金融级功能。
GitHub 地址:github.com/apache/pulsar/


近期,Apache Pulsar 社区发布了 Pulsar 2.8.2 版本!一起来看一下新版本的 release note,有哪些值得关注的升级吧。

安全增强

PR - 13392​[1]​:将 log4j 升级至 2.17.0 版本 -CVE-2021-45105​[2]​。

PR - 13328​[3]​:将 Netty 升级至 4.1.72 版本 -CVE-2021-43797​[4]​。

PR - 13133​[5]​:恢复新的​​AuthorizationProvider​​方法。

PR - 12963​[6]​:在启用认证后,支持​​CLEAR_BACKLOG​​namespace 操作。

PR - 11681​[7]​:支持禁用非 TLS 的服务端口。

PR - 11660​[8]​:将 Jetty 升级到 9.4.43 版本(v20210629)。

Broker

PR - 13069​[9]​:修复和提高 topic ownership 的调派。

PR - 13066​[10]​:修复​​LeaderElectionService.getCurrentLeader​​​,并在​​MockZooKeeper​​​中添加对​​empheralOwner​​的支持。

PR - 12993​[11]​:不再重复使用导致 bundle 超时卸载的错误 OpAddEntry 对象。

PR - 12873​[12]​:当​​SystemTopicBasedTopicPoliciesService​​出现异常时,移除 readerCaches,并关闭 reader。

PR - 12773​[13]​:修复​​TopicPoliciesCacheNotInitException​​问题。

PR - 12742​[14]​:在启用认证后,支持取消对命名空间的订阅操作。

PR - 12729​[15]​:修复​​PersistentTopic#addReplicationCluster​​竞争条件。

PR - 12721​[16]​:解决即使始终设置兼容也不能创建 consumer 的问题。

PR - 12714​[17]​:当启用​​BrokerEntryMetadata​​时,修复不正确的总体占用空间。

PR - 12698​[18]​:在重置游标时,修复由于压缩属性丢失而导致的压缩数据丢失问题。

PR - 12675​[19]​:修复​​TestRunMain​​的测试。

PR - 12656​[20]​:在启用认证后,支持​​GET_METADATA​​topic 选项。

PR - 12650​[21]​:修复​​OwnershipCache#checkOwnership​​中的错误的肯定所有权检验。

PR - 12647​[22]​:优化 schema 的异常信息。

PR - 12640​[23]​:为测试方法添加@test​[24]​注释。

PR - 12622​[25]​:在创建 TopicPolicies reader 时,支持重试。

PR - 12619​[26]​:修复 “应该使用 =而不是 == ” 的字符串。

PR - 12615​[27]​:修复 PR - 12614 问题,使用 volatile 修改​​waitingForPingResponse​​并发感知。

PR - 12607​[28]​:清理​​ProxyPublishConsumeTest​​。

PR - 12606​[29]​:避免在​​asyncAddEntry​​​中跨越线程边界传递​​OpAddEntry​​。

PR - 12602​[30]​:当 topic 压缩且关闭 ledger 时,不移动非持久性指针位置。

PR - 12600​[31]​:允许具有​​consume​​​权限的​​GetTopicsOfNamespace​​操作。

PR - 12598​[32]​:允许为系统 topic 配置 schema 兼容性策略。

PR - 12597​[33]​:清理已经删除的 namespace topic。

PR - 12585​[34]​:修复可能被提取到空目录的额外服务程序 NAR。

PR - 12582​[35]​:修复​​NamespaceService#checkHeartbeatNamespace​​中的日志拼写错误。

PR - 12570​[36]​:确认状态后,将​​OpAddEntry​​​加入到​​pendingAddEntries​​中。

PR - 12565​[37]​:在删除​​ManagedLedgerImpl​​后,取消调度任务。

PR - 12541​[38]​:为 PulsarVersion 加入 git 分支信息。

PR - 12539​[39]​:Websocket 应该将加密的上下文传递给 consumer。

PR - 12527​[40]​:如果 bundle 上的 topics 数少于2,将跳过 split 操作。

PR - 12522​[41]​:修复原始 ledger 已被删除的 reader,使其跳过压缩数据。

PR - 12493​[42]​:修复​​messageDedup​​,并删除不活跃的 producer 名字。

PR - 12470​[43]​:优化代码,即删除多余的空格。

PR - 12362​[44]​:以​​impl.MLPendingAckStore#closeAsync​​模式两次完成 Future。

PR - 12240​[45]​:修复取消订阅的竞态,并删除 topic。

PR - 12217​[46]​:禁用内置 Pulsar Client 的统计存储器。

PR - 12215​[47]​:当删除 topic 时,修复删除认证规则的漏洞。

PR - 12045​[48]​:优化 Cache Eviction 的内存使用。

PR - 12018​[49]​:避免重复添加​​BrokerEntryMetadata​​。

PR - 12015​[50]​:修复更新的 ledger 清单至 z-node 版本及 ledger 未删除问题。

PR - 11928​[51]​:修复 TopicPolicies 中的消息永远不会被清除的问题。

PR - 12212​[52]​:修复返回 consumer 错误的哈希阈值且名称重复的 consumer 问题。

PR - 11839​[53]​:将​​ Key_Shared metadata​​加入至 topic 统计中。

PR - 11795​[54]​:修复从子模块的构建问题(代理、事务协调器)。

PR - 11934​[55]​:增加清理事务缓冲区快照的方法。

PR - 11541​[56]​:提高​​transactionTest​​的稳定性。

PR - 13248​[57]​:增加​​maven.restlet.org​​代码仓库。

PR - 13117​[58]​:修正并改进 topic 所有权分配问题#13069​[59]​。

PR - 13045​[60]​:仅评估​​CURRENT_PROTOCOL_VERSION​​一次。

PR - 12941​[61]​:恢复“设置默认 root 日志级别为调试”,并将​​PULSAR_LOG_ROOT_LEVEL​​​默认为​​PULSAR_LOG_LEVEL​​。

PR - 12853​[62]​:捕获调度任务中的异常,防止意外清除。

PR - 12846​[63]​:修复 topic 中 的​​producers​​映射中被错误移除的 producer 问题。

PR - 12820​[64]​:同步更新 MessageD 中的​​inactiveProducers​​映射。

PR - 12780​[65]​:在收到异常​​SendCommand​​时,关闭连接。

PR - 12699​[66]​:在创建订阅时,修复被覆盖忽略的命名空间策略。

PR - 12466​[67]​:将 lombok 更新至 1.18.22 版本。

PR - 12464​[68]​:修复跳过压缩数据的 reader/consumer 问题。

PR - 12456​[69]​:移除​​MultiTopicsConsumerImpl​​中的数据竞争,以保证正确的消息顺序。

PR - 12451​[70]​:修复重试 topic 中的​​REAL_TOPIC​​​和​​ORIGIN_MESSAGE_ID​​属性问题。

PR - 12447​[71]​:更改 producer 防护墙错误日志为调试级别。

PR - 12444​[72]​:减少​​readFailureBackoff​​次数。

PR - 12433​[73]​:修复​​NamespaceIsolationDataImpl#secondary​​中的错误属性名。

PR - 12431​[74]​:优化 SecurityUtility 代码流。

PR - 12429​[75]​:修复压缩器问题,使其跳过来自上一个被压缩 ledger 的数据。

PR - 12424​[76]​:移除冗余代码。

PR - 12417​[77]​:修复部分未在集成测试中启用的测试。

PR - 12409​[78]​:对超时任务​​ClientConnection​​使用弱引用。

PR - 12397​[79]​:修复 cherry-pick 问题。

PR - 12367​[80]​:修复删除系统 topic policy 导致的空点问题。

PR - 12350​[81]​:更新删除不活跃的 topic 配置文档。

PR - 12345​[82]​:将日志添加到输出有异常的堆栈。

Apache Pulsar 2.8.2 新版发布,有哪些亮点和更新?

PR - 12339​[83]​:避免在关键线程上潜在阻塞对元数据的调用。

PR - 12297​[84]​:当移除 Cursor 时,修正 NPE 问题。

PR - 12280​[85]​:当配置加载失败时,输出日志。

PR - 12277​[86]​:当​​lastConfirmedEntry​​带有错误的 entry ID 时,修复错误返回的最后消息 ID 问题。

PR - 12266​[87]​:修复过期 TTL 不生效的问题。

PR - 12252​[88]​:负载均衡器应该避免卸载 heartbeat namespace。

PR - 12237​[89]​:当最后一个消息 ID 来自压缩 ledger 时,修复返回的最后一个消息 ID 拼写错误的问题。

PR - 12225​[90]​:在 Prometheus 中,添加对 topic 分割和分区标签的支持。

PR - 12223​[91]​:修复丢失消息的问题# 12221​[92]​。

PR - 12200​[93]​:在内存策略范围之外,允许配置 Pulsar 客户端分配器。

PR - 12188​[94]​:移除冗余参数。

PR - 12168​[95]​:修复测试中不正确的 logger 编号。

PR - 12161​[96]​:当原始数据已被删除时,返回最近一次压缩数据的位置。

PR - 12155​[97]​:在处理 schema 资源时,完善异常抛出问题。

PR - 12132​[98]​:修复 JWT 中的前缀设置问题,避免多次调用 getProperty。

PR - 12103​[99]​:修复​​OpAddEntry​​回收问题后的被使用问题。

PR - 12097​[100]​:修复​​rackAwarePlacementPolicy​​初始化错误的问题。

PR - 12035​[101]​:在所有之前的 consumer 断开连接之后,修复用于新的 consumer 的错误 key-hash 选择器问题。

PR - 11982​[102]​:修复 2.8 分支的 cherry-pick 问题。

PR - 11975​[103]​:删除​​NamespaceBundleFactory​​中未使用的变量和不必要的框。

PR - 11969​[104]​:在找不到下一个有效位置时,输出位置信息。

PR - 11947​[105]​:修复 NPE ​​ZkBookieRackAffinityMapping​​问题。

PR - 11937​[106]​:避免无限分割 bundle。

PR - 11922​[107]​:在没有流量时,完善暂停复制的订阅快照的逻辑。

PR - 11886​[108]​:修复​​ZKSessionTest.testReacquireLocksAfterSessionLost​​的问题。

PR - 11856​[109]​:在 Broker 级别中添加 Schema 兼容策略。

PR - 11771​[110]​:为​​BaseMetadataStoreTests​​​使用​​TestRetrySupport​​,以在重试时清理状态。

PR - 11718​[111]​:移除​​replace_maven-wagon-github.com/apache/pulsar/pull/13392​

​​[2]​​CVE-2021-45105:​github.com/advisories/GHSA-p6xc-xr62-6r2g​

​​[3]​​PR - 13328:​github.com/apache/pulsar/pull/13328​

​​[4]​​CVE-2021-43797:​github.com/advisories/GHSA-wx5j-54mm-rqqq​

​​[5]​​PR - 13133:​github.com/apache/pulsar/pull/13133​

​​[6]​​PR - 12963:​github.com/apache/pulsar/pull/12963​

​​[7]​​PR - 11681:​github.com/apache/pulsar/pull/11681​

​​[8]​​PR - 11660:​github.com/apache/pulsar/pull/11660​

​​[9]​​PR - 13069:​github.com/apache/pulsar/pull/13069​

​​[10]​​PR - 13066:​github.com/apache/pulsar/pull/13066​

​​[11]​​PR - 12993:​github.com/apache/pulsar/pull/12993​

​​[12]​​PR - 12873:​github.com/apache/pulsar/pull/12873​

​​[13]​​PR - 12773:​github.com/apache/pulsar/pull/12773​

​​[14]​​PR - 12742:​github.com/apache/pulsar/pull/12742​

​​[15]​​PR - 12729:​github.com/apache/pulsar/pull/12729​

​​[16]​​PR - 12721:​github.com/apache/pulsar/pull/12721​

​​[17]​​PR - 12714:​github.com/apache/pulsar/pull/12714​

​​[18]​​PR - 12698:​github.com/apache/pulsar/pull/12698​

​​[19]​​PR - 12675:​github.com/apache/pulsar/pull/12675​

​​[20]​​PR - 12656:​github.com/apache/pulsar/pull/12656​

​​[21]​​PR - 12650:​github.com/apache/pulsar/pull/12650​

​​[22]​​PR - 12647:​github.com/apache/pulsar/pull/12647​

​​[23]​​PR - 12640:​github.com/apache/pulsar/pull/12640​

​​[24]​​@test:​github.com/test​

​​[25]​​PR - 12622:​github.com/apache/pulsar/pull/12622​

​​[26]​​PR - 12619:​github.com/apache/pulsar/pull/12619​

​​[27]​​PR - 12615:​github.com/apache/pulsar/pull/12615​

​​[28]​​PR - 12607:​github.com/apache/pulsar/pull/12607​

​​[29]​​PR - 12606:​github.com/apache/pulsar/pull/12606​

​​[30]​​PR - 12602:​github.com/apache/pulsar/pull/12602​

​​[31]​​PR - 12600:​github.com/apache/pulsar/pull/12600​

​​[32]​​PR - 12598:​github.com/apache/pulsar/pull/12598​

​​[33]​​PR - 12597:​github.com/apache/pulsar/pull/12597​

​​[34]​​PR - 12585:​github.com/apache/pulsar/pull/12585​

​​[35]​​PR - 12582:​github.com/apache/pulsar/pull/12582​

​​[36]​​PR - 12570:​github.com/apache/pulsar/pull/12570​

​​[37]​​PR - 12565:​github.com/apache/pulsar/pull/12565​

​​[38]​​PR - 12541:​github.com/apache/pulsar/pull/12541​

​​[39]​​PR - 12539:​github.com/apache/pulsar/pull/12539​

​​[40]​​PR - 12527:​github.com/apache/pulsar/pull/12527​

​​[41]​​PR - 12522:​github.com/apache/pulsar/pull/12522​

​​[42]​​PR - 12493:​github.com/apache/pulsar/pull/12493​

​​[43]​​PR - 12470:​github.com/apache/pulsar/pull/12470​

​​[44]​​PR - 12362:​github.com/apache/pulsar/pull/12362​

​​[45]​​PR - 12240:​github.com/apache/pulsar/pull/12240​

​​[46]​​PR - 12217:​github.com/apache/pulsar/pull/12217​

​​[47]​​PR - 12215:​github.com/apache/pulsar/pull/12215​

​​[48]​​PR - 12045:​github.com/apache/pulsar/pull/12045​

​​[49]​​PR - 12018:​github.com/apache/pulsar/pull/12018​

​​[50]​​PR - 12015:​github.com/apache/pulsar/pull/12015​

​​[51]​​PR - 11928:​github.com/apache/pulsar/pull/11928​

​​[52]​​PR - 12212:​github.com/apache/pulsar/pull/12212​

​​[53]​​PR - 11839:​github.com/apache/pulsar/pull/11839​

​​[54]​​PR - 11795:​github.com/apache/pulsar/pull/11795​

​​[55]​​PR - 11934:​github.com/apache/pulsar/pull/11934​

​​[56]​​PR - 11541:​github.com/apache/pulsar/pull/11541​

​​[57]​​PR - 13248:​github.com/apache/pulsar/pull/13248​

​​[58]​​PR - 13117:​github.com/apache/pulsar/pull/13117​

​​[59]​​#13069:​github.com/apache/pulsar/pull/13069​

​​[60]​​PR - 13045:​github.com/apache/pulsar/pull/13045​

​​[61]​​PR - 12941:​github.com/apache/pulsar/pull/12941​

​​[62]​​PR - 12853:​github.com/apache/pulsar/pull/12853​

​​[63]​​PR - 12846:​github.com/apache/pulsar/pull/12846​

​​[64]​​PR - 12820:​github.com/apache/pulsar/pull/12820​

​​[65]​​PR - 12780:​github.com/apache/pulsar/pull/12780​

​​[66]​​PR - 12699:​github.com/apache/pulsar/pull/12699​

​​[67]​​PR - 12466:​github.com/apache/pulsar/pull/12466​

​​[68]​​PR - 12464:​github.com/apache/pulsar/pull/12464​

​​[69]​​PR - 12456:​github.com/apache/pulsar/pull/12456​

​​[70]​​PR - 12451:​github.com/apache/pulsar/pull/12451​

​​[71]​​PR - 12447:​github.com/apache/pulsar/pull/12447​

​​[72]​​PR - 12444:​github.com/apache/pulsar/pull/12444​

​​[73]​​PR - 12433:​github.com/apache/pulsar/pull/12433​

​​[74]​​PR - 12431:​github.com/apache/pulsar/pull/12431​

​​[75]​​PR - 12429:​github.com/apache/pulsar/pull/12429​

​​[76]​​PR - 12424:​github.com/apache/pulsar/pull/12424​

​​[77]​​PR - 12417:​github.com/apache/pulsar/pull/12417​

​​[78]​​PR - 12409:​github.com/apache/pulsar/pull/12409​

​​[79]​​PR - 12397:​github.com/apache/pulsar/pull/12397​

​​[80]​​PR - 12367:​github.com/apache/pulsar/pull/12367​

​​[81]​​PR - 12350:​github.com/apache/pulsar/pull/12350​

​​[82]​​PR - 12345:​github.com/apache/pulsar/pull/12345​

​​[83]​​PR - 12339:​github.com/apache/pulsar/pull/12339​

​​[84]​​PR - 12297:​github.com/apache/pulsar/pull/12297​

​​[85]​​PR - 12280:​github.com/apache/pulsar/pull/12280​

​​[86]​​PR - 12277:​github.com/apache/pulsar/pull/12277​

​​[87]​​PR - 12266:​github.com/apache/pulsar/pull/12266​

​​[88]​​PR - 12252:​github.com/apache/pulsar/pull/12252​

​​[89]​​PR - 12237:​github.com/apache/pulsar/pull/12237​

​​[90]​​PR - 12225:​github.com/apache/pulsar/pull/12225​

​​[91]​​PR - 12223:​github.com/apache/pulsar/pull/12223​

​​[92]​​# 12221:​github.com/apache/pulsar/issues/12221​

​​[93]​​PR - 12200:​github.com/apache/pulsar/pull/12200​

​​[94]​​PR - 12188:​github.com/apache/pulsar/pull/12188​

​​[95]​​PR - 12168:​github.com/apache/pulsar/pull/12168​

​​[96]​​PR - 12161:​github.com/apache/pulsar/pull/12161​

​​[97]​​PR - 12155:​github.com/apache/pulsar/pull/12155​

​​[98]​​PR - 12132:​github.com/apache/pulsar/pull/12132​

​​[99]​​PR - 12103:​github.com/apache/pulsar/pull/12103​

​​[100]​​PR - 12097:​github.com/apache/pulsar/pull/12097​

​​[101]​​PR - 12035:​github.com/apache/pulsar/pull/12035​

​​[102]​​PR - 11982:​github.com/apache/pulsar/pull/11982​

​​[103]​​PR - 11975:​github.com/apache/pulsar/pull/11975​

​​[104]​​PR - 11969:​github.com/apache/pulsar/pull/11969​

​​[105]​​PR - 11947:​github.com/apache/pulsar/pull/11947​

​​[106]​​PR - 11937:​github.com/apache/pulsar/pull/11937​

​​[107]​​PR - 11922:​github.com/apache/pulsar/pull/11922​

​​[108]​​PR - 11886:​github.com/apache/pulsar/pull/11886​

​​[109]​​PR - 11856:​github.com/apache/pulsar/pull/11856​

​​[110]​​PR - 11771:​github.com/apache/pulsar/pull/11771​

​​[111]​​PR - 11718:​github.com/apache/pulsar/pull/11718​

​​[112]​​PR - 11655:​github.com/apache/pulsar/pull/11655​

​​[113]​​PR - 11640:​github.com/apache/pulsar/pull/11640​

​​[114]​​PR - 11614:​github.com/apache/pulsar/pull/11614​

​​[115]​​PR - 11606:​github.com/apache/pulsar/pull/11606​

​​[116]​​PR - 11597:​github.com/apache/pulsar/pull/11597​

​​[117]​​PR - 11513:​github.com/apache/pulsar/pull/11513​

​​[118]​​PR - 10837:​github.com/apache/pulsar/pull/10837​

​​[119]​​PR - 10754:​github.com/apache/pulsar/pull/10754​

​​[120]​​PR - 12292:​github.com/apache/pulsar/pull/12292​

​​[121]​​PR - 13112:​github.com/apache/pulsar/pull/13112​

​​[122]​​PR - 12769:​github.com/apache/pulsar/pull/12769​

​​[123]​​PR - 12586:​github.com/apache/pulsar/pull/12586​

​​[124]​​PR - 12492:​github.com/apache/pulsar/pull/12492​

​​[125]​​PR - 12372:​github.com/apache/pulsar/pull/12372​

​​[126]​​PR - 12341:​github.com/apache/pulsar/pull/12341​

​​[127]​​PR - 12335:​github.com/apache/pulsar/pull/12335​

​​[128]​​PR - 12305:​github.com/apache/pulsar/pull/12305​

​​[129]​​PR - 11958:​github.com/apache/pulsar/pull/11958​

​​[130]​​PR - 11954:​github.com/apache/pulsar/pull/11954​

​​[131]​​PR - 11919:​github.com/apache/pulsar/pull/11919​

​​[132]​​PR - 11762:​github.com/apache/pulsar/pull/11762​

​​[133]​​PR - 11668:​github.com/apache/pulsar/pull/11668​

​​[134]​​PR - 11630:​github.com/apache/pulsar/pull/11630​

​​[135]​​PR - 11570:​github.com/apache/pulsar/pull/11570​

​​[136]​​PR - 12504:​github.com/apache/pulsar/pull/12504​

​​[137]​​PR - 12065:​github.com/apache/pulsar/pull/12065​

​​[138]​​PR - 11868:​github.com/apache/pulsar/pull/11868​

​​[139]​​PR - 11831:​github.com/apache/pulsar/pull/11831​

​​[140]​​PR - 10631:​github.com/apache/pulsar/pull/10631​

​​[141]​​PR - 12080:​github.com/apache/pulsar/pull/12080​

​​[142]​​PR - 12457:​github.com/apache/pulsar/pull/12457​

​​[143]​​PR - 11990:​github.com/apache/pulsar/pull/11990​

​​[144]​​PR - 11853:​github.com/apache/pulsar/pull/11853​

​​[145]​​PR - 12973:​github.com/apache/pulsar/pull/12973​

​​[146]​​PR - 12246:​github.com/apache/pulsar/pull/12246​

​​[147]​​PR - 11820:​github.com/apache/pulsar/pull/11820​

​​[148]​​PR - 11706:​github.com/apache/pulsar/pull/11706​

​​[149]​​PR - 12709:​github.com/apache/pulsar/pull/12709​

​​[150]​​PR - 12581:​github.com/apache/pulsar/pull/12581​

​​[151]​​PR - 11683:​github.com/apache/pulsar/pull/11683​

​​[152]​​PR - 12315:​github.com/apache/pulsar/pull/12315​

​​[153]​​PR - 12915:​github.com/apache/pulsar/pull/12915​

​​[154]​​PR - 12436:​github.com/apache/pulsar/pull/12436​

​​[155]​​PR - 12349:​github.com/apache/pulsar/pull/12349​

​​[156]​​PR - 12452:​github.com/apache/pulsar/pull/12452​

​​[157]​​PR - 12443:​github.com/apache/pulsar/pull/12443​

​​[158]​​PR - 12309:​github.com/apache/pulsar/pull/12309​

​​[159]​​PR - 12123:​github.com/apache/pulsar/pull/12123​

​​[160]​​PR - 12809:​github.com/apache/pulsar/pull/12809​

​​[161]​​PR - 12448:​github.com/apache/pulsar/pull/12448​

​​[162]​​PR - 12530:​github.com/apache/pulsar/pull/12530​

​​[163]​​PR - 12458:​github.com/apache/pulsar/pull/12458​

​​[164]​​PR - 11459:​github.com/apache/pulsar/pull/11459​

​​[165]​​PR - 11784:​github.com/apache/pulsar/pull/11784​

​​[166]​​PR - 11809:​github.com/apache/pulsar/pull/11809​

​​[167]​​PR - 11931:​github.com/apache/pulsar/pull/11931​

​​[168]​​PR - 13176:​github.com/apache/pulsar/pull/13176​

​​[169]​​PR - 13161:​github.com/apache/pulsar/pull/13161​

​​[170]​​PR - 12781:​github.com/apache/pulsar/pull/12781​

​​[171]​​PR - 12779:​github.com/apache/pulsar/pull/12779​

​​[172]​​PR - 12673:​github.com/apache/pulsar/pull/12673​

​​[173]​​PR - 12652:​github.com/apache/pulsar/pull/12652​

​​[174]​​PR - 12620:​github.com/apache/pulsar/pull/12620​

​​[175]​​PR - 12588:​github.com/apache/pulsar/pull/12588​

​​[176]​​PR - 12500:​github.com/apache/pulsar/pull/12500​

​​[177]​​PR - 12308:​github.com/apache/pulsar/pull/12308​

​​[178]​​PR - 12259:​github.com/apache/pulsar/pull/12259​

​​[179]​​PR - 12170:​github.com/apache/pulsar/pull/12170​

​​[180]​​PR - 12044:​github.com/apache/pulsar/pull/12044​

​​[181]​​PR - 11988:​github.com/apache/pulsar/pull/11988​

​​[182]​​PR - 11906:​github.com/apache/pulsar/pull/11906​

​​[183]​​PR - 11884:​github.com/apache/pulsar/pull/11884​

​​[184]​​PR - 11828:​github.com/apache/pulsar/pull/11828​

​​[185]​​PR - 11826:​github.com/apache/pulsar/pull/11826​

​​[186]​​PR - 11802:​github.com/apache/pulsar/pull/11802​

​​[187]​​PR - 12469:​github.com/apache/pulsar/pull/12469​

​​[188]​​PR - 12467:​github.com/apache/pulsar/pull/12467​

​​[189]​​PR - 12348:​github.com/apache/pulsar/pull/12348​

​​[190]​​PR - 12148:​github.com/apache/pulsar/pull/12148​

​​[191]​​PR - 11939:​github.com/apache/pulsar/pull/11939​

​​[192]​​PR - 12641:​github.com/apache/pulsar/pull/12641​

​​[193]​​PR - 12108:​github.com/apache/pulsar/pull/12108​

​​[194]​​PR - 12084:​github.com/apache/pulsar/pull/12084​

​​[195]​​PR - 12090:​github.com/apache/pulsar/pull/12090​

​​[196]​​PR - 12642:​github.com/apache/pulsar/pull/12642​

​​[197]​​PR - 12427:​github.com/apache/pulsar/pull/12427​

​​[198]​​PR - 12175:​github.com/apache/pulsar/pull/12175​

​​[199]​​PR - 12058:​github.com/apache/pulsar/pull/12058​

​​[200]​​PR - 11840:​github.com/apache/pulsar/pull/11840​

​​[201]​​PR - 12516:​github.com/apache/pulsar/pull/12516​

​​[202]​​PR - 12092:​github.com/apache/pulsar/pull/12092​

​​[203]​​PR - 12593:​github.com/apache/pulsar/pull/12593​

​​[204]​​PR - 12232:​github.com/apache/pulsar/pull/12232​

​​[205]​​PR - 12130:​github.com/apache/pulsar/pull/12130​

​​[206]​​PR - 11955:​github.com/apache/pulsar/pull/11955​

​​[207]​​PR - 12438:​github.com/apache/pulsar/pull/12438​

​​[208]​​PR - 12398:​github.com/apache/pulsar/pull/12398​

​​[209]​​PR - 12329:​github.com/apache/pulsar/pull/12329​

​​[210]​​PR - 12143:​github.com/apache/pulsar/pull/12143​

​​[211]​​PR - 12666:​github.com/apache/pulsar/pull/12666​

​​[212]​​PR - 12311:​github.com/apache/pulsar/pull/12311​

​​[213]​​PR - 12594:​github.com/apache/pulsar/pull/12594​

​​[214]​​PR - 11971:​github.com/apache/pulsar/pull/11971​

​​[215]​​PR - 12299:​github.com/apache/pulsar/pull/12299​

​​[216]​​PR - 12245:​github.com/apache/pulsar/pull/12245​

​​[217]​​PR - 12111:​github.com/apache/pulsar/pull/12111​

​​[218]​​PR - 12057:​github.com/apache/pulsar/pull/12057​

​​[219]​​下载:​pulsar.apache.org/download​

​​[220]​​提 issue:​github.com/apache/pulsar/issues​

​​[221]​​Apache Pulsar 官方贡献指南:​pulsar.apache.org/en/contributing/​


▼ 关注「Apache Pulsar」,获取更多技术干货 ▼

???????? 加入 Apache Pulsar 中文交流群 ????????




本文共计5207个文字,预计阅读时间需要21分钟。

Apache Pulsar 2.8.2 新版发布,有哪些亮点和更新?

Apache Pulsar云原生消息队列和融合系统,提供统一消费模型,支持消息队列和流两种场景,既可为队列场景提供企业级读写服务质量和强一致性保障,又可为流场景提供高吞吐率。



关于 Apache Pulsar

云原生时代消息队列和流融合系统,提供统一的消费模型,支持消息队列和流两种场景,既能为队列场景提供企业级读写服务质量和强一致性保障,又能为流场景提供高吞吐、低延迟;采用存储计算分离架构,支持大集群、多租户、百万级 Topic、跨地域数据复制、持久化存储、分层存储、高可扩展性等企业级和金融级功能。
GitHub 地址:github.com/apache/pulsar/


近期,Apache Pulsar 社区发布了 Pulsar 2.8.2 版本!一起来看一下新版本的 release note,有哪些值得关注的升级吧。

安全增强

PR - 13392​[1]​:将 log4j 升级至 2.17.0 版本 -CVE-2021-45105​[2]​。

PR - 13328​[3]​:将 Netty 升级至 4.1.72 版本 -CVE-2021-43797​[4]​。

PR - 13133​[5]​:恢复新的​​AuthorizationProvider​​方法。

PR - 12963​[6]​:在启用认证后,支持​​CLEAR_BACKLOG​​namespace 操作。

PR - 11681​[7]​:支持禁用非 TLS 的服务端口。

PR - 11660​[8]​:将 Jetty 升级到 9.4.43 版本(v20210629)。

Broker

PR - 13069​[9]​:修复和提高 topic ownership 的调派。

PR - 13066​[10]​:修复​​LeaderElectionService.getCurrentLeader​​​,并在​​MockZooKeeper​​​中添加对​​empheralOwner​​的支持。

PR - 12993​[11]​:不再重复使用导致 bundle 超时卸载的错误 OpAddEntry 对象。

PR - 12873​[12]​:当​​SystemTopicBasedTopicPoliciesService​​出现异常时,移除 readerCaches,并关闭 reader。

PR - 12773​[13]​:修复​​TopicPoliciesCacheNotInitException​​问题。

PR - 12742​[14]​:在启用认证后,支持取消对命名空间的订阅操作。

PR - 12729​[15]​:修复​​PersistentTopic#addReplicationCluster​​竞争条件。

PR - 12721​[16]​:解决即使始终设置兼容也不能创建 consumer 的问题。

PR - 12714​[17]​:当启用​​BrokerEntryMetadata​​时,修复不正确的总体占用空间。

PR - 12698​[18]​:在重置游标时,修复由于压缩属性丢失而导致的压缩数据丢失问题。

PR - 12675​[19]​:修复​​TestRunMain​​的测试。

PR - 12656​[20]​:在启用认证后,支持​​GET_METADATA​​topic 选项。

PR - 12650​[21]​:修复​​OwnershipCache#checkOwnership​​中的错误的肯定所有权检验。

PR - 12647​[22]​:优化 schema 的异常信息。

PR - 12640​[23]​:为测试方法添加@test​[24]​注释。

PR - 12622​[25]​:在创建 TopicPolicies reader 时,支持重试。

PR - 12619​[26]​:修复 “应该使用 =而不是 == ” 的字符串。

PR - 12615​[27]​:修复 PR - 12614 问题,使用 volatile 修改​​waitingForPingResponse​​并发感知。

PR - 12607​[28]​:清理​​ProxyPublishConsumeTest​​。

PR - 12606​[29]​:避免在​​asyncAddEntry​​​中跨越线程边界传递​​OpAddEntry​​。

PR - 12602​[30]​:当 topic 压缩且关闭 ledger 时,不移动非持久性指针位置。

PR - 12600​[31]​:允许具有​​consume​​​权限的​​GetTopicsOfNamespace​​操作。

PR - 12598​[32]​:允许为系统 topic 配置 schema 兼容性策略。

PR - 12597​[33]​:清理已经删除的 namespace topic。

PR - 12585​[34]​:修复可能被提取到空目录的额外服务程序 NAR。

PR - 12582​[35]​:修复​​NamespaceService#checkHeartbeatNamespace​​中的日志拼写错误。

PR - 12570​[36]​:确认状态后,将​​OpAddEntry​​​加入到​​pendingAddEntries​​中。

PR - 12565​[37]​:在删除​​ManagedLedgerImpl​​后,取消调度任务。

PR - 12541​[38]​:为 PulsarVersion 加入 git 分支信息。

PR - 12539​[39]​:Websocket 应该将加密的上下文传递给 consumer。

PR - 12527​[40]​:如果 bundle 上的 topics 数少于2,将跳过 split 操作。

PR - 12522​[41]​:修复原始 ledger 已被删除的 reader,使其跳过压缩数据。

PR - 12493​[42]​:修复​​messageDedup​​,并删除不活跃的 producer 名字。

PR - 12470​[43]​:优化代码,即删除多余的空格。

PR - 12362​[44]​:以​​impl.MLPendingAckStore#closeAsync​​模式两次完成 Future。

PR - 12240​[45]​:修复取消订阅的竞态,并删除 topic。

PR - 12217​[46]​:禁用内置 Pulsar Client 的统计存储器。

PR - 12215​[47]​:当删除 topic 时,修复删除认证规则的漏洞。

PR - 12045​[48]​:优化 Cache Eviction 的内存使用。

PR - 12018​[49]​:避免重复添加​​BrokerEntryMetadata​​。

PR - 12015​[50]​:修复更新的 ledger 清单至 z-node 版本及 ledger 未删除问题。

PR - 11928​[51]​:修复 TopicPolicies 中的消息永远不会被清除的问题。

PR - 12212​[52]​:修复返回 consumer 错误的哈希阈值且名称重复的 consumer 问题。

PR - 11839​[53]​:将​​ Key_Shared metadata​​加入至 topic 统计中。

PR - 11795​[54]​:修复从子模块的构建问题(代理、事务协调器)。

PR - 11934​[55]​:增加清理事务缓冲区快照的方法。

PR - 11541​[56]​:提高​​transactionTest​​的稳定性。

PR - 13248​[57]​:增加​​maven.restlet.org​​代码仓库。

PR - 13117​[58]​:修正并改进 topic 所有权分配问题#13069​[59]​。

PR - 13045​[60]​:仅评估​​CURRENT_PROTOCOL_VERSION​​一次。

PR - 12941​[61]​:恢复“设置默认 root 日志级别为调试”,并将​​PULSAR_LOG_ROOT_LEVEL​​​默认为​​PULSAR_LOG_LEVEL​​。

PR - 12853​[62]​:捕获调度任务中的异常,防止意外清除。

PR - 12846​[63]​:修复 topic 中 的​​producers​​映射中被错误移除的 producer 问题。

PR - 12820​[64]​:同步更新 MessageD 中的​​inactiveProducers​​映射。

PR - 12780​[65]​:在收到异常​​SendCommand​​时,关闭连接。

PR - 12699​[66]​:在创建订阅时,修复被覆盖忽略的命名空间策略。

PR - 12466​[67]​:将 lombok 更新至 1.18.22 版本。

PR - 12464​[68]​:修复跳过压缩数据的 reader/consumer 问题。

PR - 12456​[69]​:移除​​MultiTopicsConsumerImpl​​中的数据竞争,以保证正确的消息顺序。

PR - 12451​[70]​:修复重试 topic 中的​​REAL_TOPIC​​​和​​ORIGIN_MESSAGE_ID​​属性问题。

PR - 12447​[71]​:更改 producer 防护墙错误日志为调试级别。

PR - 12444​[72]​:减少​​readFailureBackoff​​次数。

PR - 12433​[73]​:修复​​NamespaceIsolationDataImpl#secondary​​中的错误属性名。

PR - 12431​[74]​:优化 SecurityUtility 代码流。

PR - 12429​[75]​:修复压缩器问题,使其跳过来自上一个被压缩 ledger 的数据。

PR - 12424​[76]​:移除冗余代码。

PR - 12417​[77]​:修复部分未在集成测试中启用的测试。

PR - 12409​[78]​:对超时任务​​ClientConnection​​使用弱引用。

PR - 12397​[79]​:修复 cherry-pick 问题。

PR - 12367​[80]​:修复删除系统 topic policy 导致的空点问题。

PR - 12350​[81]​:更新删除不活跃的 topic 配置文档。

PR - 12345​[82]​:将日志添加到输出有异常的堆栈。

Apache Pulsar 2.8.2 新版发布,有哪些亮点和更新?

PR - 12339​[83]​:避免在关键线程上潜在阻塞对元数据的调用。

PR - 12297​[84]​:当移除 Cursor 时,修正 NPE 问题。

PR - 12280​[85]​:当配置加载失败时,输出日志。

PR - 12277​[86]​:当​​lastConfirmedEntry​​带有错误的 entry ID 时,修复错误返回的最后消息 ID 问题。

PR - 12266​[87]​:修复过期 TTL 不生效的问题。

PR - 12252​[88]​:负载均衡器应该避免卸载 heartbeat namespace。

PR - 12237​[89]​:当最后一个消息 ID 来自压缩 ledger 时,修复返回的最后一个消息 ID 拼写错误的问题。

PR - 12225​[90]​:在 Prometheus 中,添加对 topic 分割和分区标签的支持。

PR - 12223​[91]​:修复丢失消息的问题# 12221​[92]​。

PR - 12200​[93]​:在内存策略范围之外,允许配置 Pulsar 客户端分配器。

PR - 12188​[94]​:移除冗余参数。

PR - 12168​[95]​:修复测试中不正确的 logger 编号。

PR - 12161​[96]​:当原始数据已被删除时,返回最近一次压缩数据的位置。

PR - 12155​[97]​:在处理 schema 资源时,完善异常抛出问题。

PR - 12132​[98]​:修复 JWT 中的前缀设置问题,避免多次调用 getProperty。

PR - 12103​[99]​:修复​​OpAddEntry​​回收问题后的被使用问题。

PR - 12097​[100]​:修复​​rackAwarePlacementPolicy​​初始化错误的问题。

PR - 12035​[101]​:在所有之前的 consumer 断开连接之后,修复用于新的 consumer 的错误 key-hash 选择器问题。

PR - 11982​[102]​:修复 2.8 分支的 cherry-pick 问题。

PR - 11975​[103]​:删除​​NamespaceBundleFactory​​中未使用的变量和不必要的框。

PR - 11969​[104]​:在找不到下一个有效位置时,输出位置信息。

PR - 11947​[105]​:修复 NPE ​​ZkBookieRackAffinityMapping​​问题。

PR - 11937​[106]​:避免无限分割 bundle。

PR - 11922​[107]​:在没有流量时,完善暂停复制的订阅快照的逻辑。

PR - 11886​[108]​:修复​​ZKSessionTest.testReacquireLocksAfterSessionLost​​的问题。

PR - 11856​[109]​:在 Broker 级别中添加 Schema 兼容策略。

PR - 11771​[110]​:为​​BaseMetadataStoreTests​​​使用​​TestRetrySupport​​,以在重试时清理状态。

PR - 11718​[111]​:移除​​replace_maven-wagon-github.com/apache/pulsar/pull/13392​

​​[2]​​CVE-2021-45105:​github.com/advisories/GHSA-p6xc-xr62-6r2g​

​​[3]​​PR - 13328:​github.com/apache/pulsar/pull/13328​

​​[4]​​CVE-2021-43797:​github.com/advisories/GHSA-wx5j-54mm-rqqq​

​​[5]​​PR - 13133:​github.com/apache/pulsar/pull/13133​

​​[6]​​PR - 12963:​github.com/apache/pulsar/pull/12963​

​​[7]​​PR - 11681:​github.com/apache/pulsar/pull/11681​

​​[8]​​PR - 11660:​github.com/apache/pulsar/pull/11660​

​​[9]​​PR - 13069:​github.com/apache/pulsar/pull/13069​

​​[10]​​PR - 13066:​github.com/apache/pulsar/pull/13066​

​​[11]​​PR - 12993:​github.com/apache/pulsar/pull/12993​

​​[12]​​PR - 12873:​github.com/apache/pulsar/pull/12873​

​​[13]​​PR - 12773:​github.com/apache/pulsar/pull/12773​

​​[14]​​PR - 12742:​github.com/apache/pulsar/pull/12742​

​​[15]​​PR - 12729:​github.com/apache/pulsar/pull/12729​

​​[16]​​PR - 12721:​github.com/apache/pulsar/pull/12721​

​​[17]​​PR - 12714:​github.com/apache/pulsar/pull/12714​

​​[18]​​PR - 12698:​github.com/apache/pulsar/pull/12698​

​​[19]​​PR - 12675:​github.com/apache/pulsar/pull/12675​

​​[20]​​PR - 12656:​github.com/apache/pulsar/pull/12656​

​​[21]​​PR - 12650:​github.com/apache/pulsar/pull/12650​

​​[22]​​PR - 12647:​github.com/apache/pulsar/pull/12647​

​​[23]​​PR - 12640:​github.com/apache/pulsar/pull/12640​

​​[24]​​@test:​github.com/test​

​​[25]​​PR - 12622:​github.com/apache/pulsar/pull/12622​

​​[26]​​PR - 12619:​github.com/apache/pulsar/pull/12619​

​​[27]​​PR - 12615:​github.com/apache/pulsar/pull/12615​

​​[28]​​PR - 12607:​github.com/apache/pulsar/pull/12607​

​​[29]​​PR - 12606:​github.com/apache/pulsar/pull/12606​

​​[30]​​PR - 12602:​github.com/apache/pulsar/pull/12602​

​​[31]​​PR - 12600:​github.com/apache/pulsar/pull/12600​

​​[32]​​PR - 12598:​github.com/apache/pulsar/pull/12598​

​​[33]​​PR - 12597:​github.com/apache/pulsar/pull/12597​

​​[34]​​PR - 12585:​github.com/apache/pulsar/pull/12585​

​​[35]​​PR - 12582:​github.com/apache/pulsar/pull/12582​

​​[36]​​PR - 12570:​github.com/apache/pulsar/pull/12570​

​​[37]​​PR - 12565:​github.com/apache/pulsar/pull/12565​

​​[38]​​PR - 12541:​github.com/apache/pulsar/pull/12541​

​​[39]​​PR - 12539:​github.com/apache/pulsar/pull/12539​

​​[40]​​PR - 12527:​github.com/apache/pulsar/pull/12527​

​​[41]​​PR - 12522:​github.com/apache/pulsar/pull/12522​

​​[42]​​PR - 12493:​github.com/apache/pulsar/pull/12493​

​​[43]​​PR - 12470:​github.com/apache/pulsar/pull/12470​

​​[44]​​PR - 12362:​github.com/apache/pulsar/pull/12362​

​​[45]​​PR - 12240:​github.com/apache/pulsar/pull/12240​

​​[46]​​PR - 12217:​github.com/apache/pulsar/pull/12217​

​​[47]​​PR - 12215:​github.com/apache/pulsar/pull/12215​

​​[48]​​PR - 12045:​github.com/apache/pulsar/pull/12045​

​​[49]​​PR - 12018:​github.com/apache/pulsar/pull/12018​

​​[50]​​PR - 12015:​github.com/apache/pulsar/pull/12015​

​​[51]​​PR - 11928:​github.com/apache/pulsar/pull/11928​

​​[52]​​PR - 12212:​github.com/apache/pulsar/pull/12212​

​​[53]​​PR - 11839:​github.com/apache/pulsar/pull/11839​

​​[54]​​PR - 11795:​github.com/apache/pulsar/pull/11795​

​​[55]​​PR - 11934:​github.com/apache/pulsar/pull/11934​

​​[56]​​PR - 11541:​github.com/apache/pulsar/pull/11541​

​​[57]​​PR - 13248:​github.com/apache/pulsar/pull/13248​

​​[58]​​PR - 13117:​github.com/apache/pulsar/pull/13117​

​​[59]​​#13069:​github.com/apache/pulsar/pull/13069​

​​[60]​​PR - 13045:​github.com/apache/pulsar/pull/13045​

​​[61]​​PR - 12941:​github.com/apache/pulsar/pull/12941​

​​[62]​​PR - 12853:​github.com/apache/pulsar/pull/12853​

​​[63]​​PR - 12846:​github.com/apache/pulsar/pull/12846​

​​[64]​​PR - 12820:​github.com/apache/pulsar/pull/12820​

​​[65]​​PR - 12780:​github.com/apache/pulsar/pull/12780​

​​[66]​​PR - 12699:​github.com/apache/pulsar/pull/12699​

​​[67]​​PR - 12466:​github.com/apache/pulsar/pull/12466​

​​[68]​​PR - 12464:​github.com/apache/pulsar/pull/12464​

​​[69]​​PR - 12456:​github.com/apache/pulsar/pull/12456​

​​[70]​​PR - 12451:​github.com/apache/pulsar/pull/12451​

​​[71]​​PR - 12447:​github.com/apache/pulsar/pull/12447​

​​[72]​​PR - 12444:​github.com/apache/pulsar/pull/12444​

​​[73]​​PR - 12433:​github.com/apache/pulsar/pull/12433​

​​[74]​​PR - 12431:​github.com/apache/pulsar/pull/12431​

​​[75]​​PR - 12429:​github.com/apache/pulsar/pull/12429​

​​[76]​​PR - 12424:​github.com/apache/pulsar/pull/12424​

​​[77]​​PR - 12417:​github.com/apache/pulsar/pull/12417​

​​[78]​​PR - 12409:​github.com/apache/pulsar/pull/12409​

​​[79]​​PR - 12397:​github.com/apache/pulsar/pull/12397​

​​[80]​​PR - 12367:​github.com/apache/pulsar/pull/12367​

​​[81]​​PR - 12350:​github.com/apache/pulsar/pull/12350​

​​[82]​​PR - 12345:​github.com/apache/pulsar/pull/12345​

​​[83]​​PR - 12339:​github.com/apache/pulsar/pull/12339​

​​[84]​​PR - 12297:​github.com/apache/pulsar/pull/12297​

​​[85]​​PR - 12280:​github.com/apache/pulsar/pull/12280​

​​[86]​​PR - 12277:​github.com/apache/pulsar/pull/12277​

​​[87]​​PR - 12266:​github.com/apache/pulsar/pull/12266​

​​[88]​​PR - 12252:​github.com/apache/pulsar/pull/12252​

​​[89]​​PR - 12237:​github.com/apache/pulsar/pull/12237​

​​[90]​​PR - 12225:​github.com/apache/pulsar/pull/12225​

​​[91]​​PR - 12223:​github.com/apache/pulsar/pull/12223​

​​[92]​​# 12221:​github.com/apache/pulsar/issues/12221​

​​[93]​​PR - 12200:​github.com/apache/pulsar/pull/12200​

​​[94]​​PR - 12188:​github.com/apache/pulsar/pull/12188​

​​[95]​​PR - 12168:​github.com/apache/pulsar/pull/12168​

​​[96]​​PR - 12161:​github.com/apache/pulsar/pull/12161​

​​[97]​​PR - 12155:​github.com/apache/pulsar/pull/12155​

​​[98]​​PR - 12132:​github.com/apache/pulsar/pull/12132​

​​[99]​​PR - 12103:​github.com/apache/pulsar/pull/12103​

​​[100]​​PR - 12097:​github.com/apache/pulsar/pull/12097​

​​[101]​​PR - 12035:​github.com/apache/pulsar/pull/12035​

​​[102]​​PR - 11982:​github.com/apache/pulsar/pull/11982​

​​[103]​​PR - 11975:​github.com/apache/pulsar/pull/11975​

​​[104]​​PR - 11969:​github.com/apache/pulsar/pull/11969​

​​[105]​​PR - 11947:​github.com/apache/pulsar/pull/11947​

​​[106]​​PR - 11937:​github.com/apache/pulsar/pull/11937​

​​[107]​​PR - 11922:​github.com/apache/pulsar/pull/11922​

​​[108]​​PR - 11886:​github.com/apache/pulsar/pull/11886​

​​[109]​​PR - 11856:​github.com/apache/pulsar/pull/11856​

​​[110]​​PR - 11771:​github.com/apache/pulsar/pull/11771​

​​[111]​​PR - 11718:​github.com/apache/pulsar/pull/11718​

​​[112]​​PR - 11655:​github.com/apache/pulsar/pull/11655​

​​[113]​​PR - 11640:​github.com/apache/pulsar/pull/11640​

​​[114]​​PR - 11614:​github.com/apache/pulsar/pull/11614​

​​[115]​​PR - 11606:​github.com/apache/pulsar/pull/11606​

​​[116]​​PR - 11597:​github.com/apache/pulsar/pull/11597​

​​[117]​​PR - 11513:​github.com/apache/pulsar/pull/11513​

​​[118]​​PR - 10837:​github.com/apache/pulsar/pull/10837​

​​[119]​​PR - 10754:​github.com/apache/pulsar/pull/10754​

​​[120]​​PR - 12292:​github.com/apache/pulsar/pull/12292​

​​[121]​​PR - 13112:​github.com/apache/pulsar/pull/13112​

​​[122]​​PR - 12769:​github.com/apache/pulsar/pull/12769​

​​[123]​​PR - 12586:​github.com/apache/pulsar/pull/12586​

​​[124]​​PR - 12492:​github.com/apache/pulsar/pull/12492​

​​[125]​​PR - 12372:​github.com/apache/pulsar/pull/12372​

​​[126]​​PR - 12341:​github.com/apache/pulsar/pull/12341​

​​[127]​​PR - 12335:​github.com/apache/pulsar/pull/12335​

​​[128]​​PR - 12305:​github.com/apache/pulsar/pull/12305​

​​[129]​​PR - 11958:​github.com/apache/pulsar/pull/11958​

​​[130]​​PR - 11954:​github.com/apache/pulsar/pull/11954​

​​[131]​​PR - 11919:​github.com/apache/pulsar/pull/11919​

​​[132]​​PR - 11762:​github.com/apache/pulsar/pull/11762​

​​[133]​​PR - 11668:​github.com/apache/pulsar/pull/11668​

​​[134]​​PR - 11630:​github.com/apache/pulsar/pull/11630​

​​[135]​​PR - 11570:​github.com/apache/pulsar/pull/11570​

​​[136]​​PR - 12504:​github.com/apache/pulsar/pull/12504​

​​[137]​​PR - 12065:​github.com/apache/pulsar/pull/12065​

​​[138]​​PR - 11868:​github.com/apache/pulsar/pull/11868​

​​[139]​​PR - 11831:​github.com/apache/pulsar/pull/11831​

​​[140]​​PR - 10631:​github.com/apache/pulsar/pull/10631​

​​[141]​​PR - 12080:​github.com/apache/pulsar/pull/12080​

​​[142]​​PR - 12457:​github.com/apache/pulsar/pull/12457​

​​[143]​​PR - 11990:​github.com/apache/pulsar/pull/11990​

​​[144]​​PR - 11853:​github.com/apache/pulsar/pull/11853​

​​[145]​​PR - 12973:​github.com/apache/pulsar/pull/12973​

​​[146]​​PR - 12246:​github.com/apache/pulsar/pull/12246​

​​[147]​​PR - 11820:​github.com/apache/pulsar/pull/11820​

​​[148]​​PR - 11706:​github.com/apache/pulsar/pull/11706​

​​[149]​​PR - 12709:​github.com/apache/pulsar/pull/12709​

​​[150]​​PR - 12581:​github.com/apache/pulsar/pull/12581​

​​[151]​​PR - 11683:​github.com/apache/pulsar/pull/11683​

​​[152]​​PR - 12315:​github.com/apache/pulsar/pull/12315​

​​[153]​​PR - 12915:​github.com/apache/pulsar/pull/12915​

​​[154]​​PR - 12436:​github.com/apache/pulsar/pull/12436​

​​[155]​​PR - 12349:​github.com/apache/pulsar/pull/12349​

​​[156]​​PR - 12452:​github.com/apache/pulsar/pull/12452​

​​[157]​​PR - 12443:​github.com/apache/pulsar/pull/12443​

​​[158]​​PR - 12309:​github.com/apache/pulsar/pull/12309​

​​[159]​​PR - 12123:​github.com/apache/pulsar/pull/12123​

​​[160]​​PR - 12809:​github.com/apache/pulsar/pull/12809​

​​[161]​​PR - 12448:​github.com/apache/pulsar/pull/12448​

​​[162]​​PR - 12530:​github.com/apache/pulsar/pull/12530​

​​[163]​​PR - 12458:​github.com/apache/pulsar/pull/12458​

​​[164]​​PR - 11459:​github.com/apache/pulsar/pull/11459​

​​[165]​​PR - 11784:​github.com/apache/pulsar/pull/11784​

​​[166]​​PR - 11809:​github.com/apache/pulsar/pull/11809​

​​[167]​​PR - 11931:​github.com/apache/pulsar/pull/11931​

​​[168]​​PR - 13176:​github.com/apache/pulsar/pull/13176​

​​[169]​​PR - 13161:​github.com/apache/pulsar/pull/13161​

​​[170]​​PR - 12781:​github.com/apache/pulsar/pull/12781​

​​[171]​​PR - 12779:​github.com/apache/pulsar/pull/12779​

​​[172]​​PR - 12673:​github.com/apache/pulsar/pull/12673​

​​[173]​​PR - 12652:​github.com/apache/pulsar/pull/12652​

​​[174]​​PR - 12620:​github.com/apache/pulsar/pull/12620​

​​[175]​​PR - 12588:​github.com/apache/pulsar/pull/12588​

​​[176]​​PR - 12500:​github.com/apache/pulsar/pull/12500​

​​[177]​​PR - 12308:​github.com/apache/pulsar/pull/12308​

​​[178]​​PR - 12259:​github.com/apache/pulsar/pull/12259​

​​[179]​​PR - 12170:​github.com/apache/pulsar/pull/12170​

​​[180]​​PR - 12044:​github.com/apache/pulsar/pull/12044​

​​[181]​​PR - 11988:​github.com/apache/pulsar/pull/11988​

​​[182]​​PR - 11906:​github.com/apache/pulsar/pull/11906​

​​[183]​​PR - 11884:​github.com/apache/pulsar/pull/11884​

​​[184]​​PR - 11828:​github.com/apache/pulsar/pull/11828​

​​[185]​​PR - 11826:​github.com/apache/pulsar/pull/11826​

​​[186]​​PR - 11802:​github.com/apache/pulsar/pull/11802​

​​[187]​​PR - 12469:​github.com/apache/pulsar/pull/12469​

​​[188]​​PR - 12467:​github.com/apache/pulsar/pull/12467​

​​[189]​​PR - 12348:​github.com/apache/pulsar/pull/12348​

​​[190]​​PR - 12148:​github.com/apache/pulsar/pull/12148​

​​[191]​​PR - 11939:​github.com/apache/pulsar/pull/11939​

​​[192]​​PR - 12641:​github.com/apache/pulsar/pull/12641​

​​[193]​​PR - 12108:​github.com/apache/pulsar/pull/12108​

​​[194]​​PR - 12084:​github.com/apache/pulsar/pull/12084​

​​[195]​​PR - 12090:​github.com/apache/pulsar/pull/12090​

​​[196]​​PR - 12642:​github.com/apache/pulsar/pull/12642​

​​[197]​​PR - 12427:​github.com/apache/pulsar/pull/12427​

​​[198]​​PR - 12175:​github.com/apache/pulsar/pull/12175​

​​[199]​​PR - 12058:​github.com/apache/pulsar/pull/12058​

​​[200]​​PR - 11840:​github.com/apache/pulsar/pull/11840​

​​[201]​​PR - 12516:​github.com/apache/pulsar/pull/12516​

​​[202]​​PR - 12092:​github.com/apache/pulsar/pull/12092​

​​[203]​​PR - 12593:​github.com/apache/pulsar/pull/12593​

​​[204]​​PR - 12232:​github.com/apache/pulsar/pull/12232​

​​[205]​​PR - 12130:​github.com/apache/pulsar/pull/12130​

​​[206]​​PR - 11955:​github.com/apache/pulsar/pull/11955​

​​[207]​​PR - 12438:​github.com/apache/pulsar/pull/12438​

​​[208]​​PR - 12398:​github.com/apache/pulsar/pull/12398​

​​[209]​​PR - 12329:​github.com/apache/pulsar/pull/12329​

​​[210]​​PR - 12143:​github.com/apache/pulsar/pull/12143​

​​[211]​​PR - 12666:​github.com/apache/pulsar/pull/12666​

​​[212]​​PR - 12311:​github.com/apache/pulsar/pull/12311​

​​[213]​​PR - 12594:​github.com/apache/pulsar/pull/12594​

​​[214]​​PR - 11971:​github.com/apache/pulsar/pull/11971​

​​[215]​​PR - 12299:​github.com/apache/pulsar/pull/12299​

​​[216]​​PR - 12245:​github.com/apache/pulsar/pull/12245​

​​[217]​​PR - 12111:​github.com/apache/pulsar/pull/12111​

​​[218]​​PR - 12057:​github.com/apache/pulsar/pull/12057​

​​[219]​​下载:​pulsar.apache.org/download​

​​[220]​​提 issue:​github.com/apache/pulsar/issues​

​​[221]​​Apache Pulsar 官方贡献指南:​pulsar.apache.org/en/contributing/​


▼ 关注「Apache Pulsar」,获取更多技术干货 ▼

???????? 加入 Apache Pulsar 中文交流群 ????????