"
各位热爱 Pulsar 的小伙伴们,Pulsar 社区周报更新啦!这里将记录 Pulsar 社区每周的重要更新,每周发布。
"
本期主题:Apache Pulsar 新分支 3.3 版本发布
Apache Pulsar 新分支 3.3 版本发布:Apache Pulsar 3.3.0^[1]^
包含的 PIP:
-
PIP-315: Configurable max delay limit for delayed delivery #21798
-
PIP-321 Introduce
allowed-cluster
at the namespace level #21648 -
PIP-324: Alpine Docker images #21716
-
PIP-325: Add command to abort transaction #21731
-
PIP-326: Create a BOM to ease dependency management #21747
-
PIP-329: Strategy for maintaining the latest tag to Pulsar docker images #21872
-
PIP-330: getMessagesById gets all messages #21873
-
PIP 342: Support OpenTelemetry metrics in Pulsar client #22178
-
PIP-343: Use picocli instead of jcommander #22181
-
PIP-344 Correct the behavior of the public API pulsarClient.getPartitionsForTopic(topicName) #22182
-
PIP-335: Oxia metadata plugin #22009
-
PIP-339: Introducing the --log-topic Option for Pulsar Sinks and Sources #22071
详细新特性和 bugfix 等,请详见 Apache Pulsar 3.3.0 release-notes^[2]^ 页面(版本策略^[3]^)。
BIGO 百页小册《Apache Pulsar 调优指南》
Hi,Apache Pulsar 社区的小伙伴们,社区 2024 上半年度的有奖问卷调查来啦!
参与问卷调查可优先获得 BIGO 冯文智大咖贡献的100 页小册 《Apache Pulsar 调优指南》 ,精彩不容错过,详情请看问卷。
点击链接参与有奖问卷调查:👇🏻
Apache Pulsar 中文社区有奖问卷调查(2024 上半年度)

Pulsar Weekly Merge Stars
感谢以下的小伙伴,感谢你们本周为 Apache Pulsar 做的精彩贡献(排名不分先后)
Pulsar Weekly Merge Stars "
@MMirelli,@shoothzj,@dependabot[bot],@thetumbled,@mattisonchao,@AnonHxy,@rdhabalia,@poorbarcode,@horizonzy,@nodece,@entvex,@heesung-sn,@dragosvictor,@michaeljmarshall,@jiangpengcheng,@dlg99,@yaalsn,@merlimat,@zymap,@yangl,@lhotari
"
apache/pulsar
fix
-
[fix][meta]检查是否在 RocksdbMetadataStore 中关闭了元数据存储 ^[4]^ @lhotari
-
[fix]从BookieRackAffinityMapping中移除阻塞调用 ^[5]^ @merlimat
-
[fix] [broker]修复了Broker因为损坏的schema ledger导致无法加载stats-internal的问题。^[6]^ @rdhabalia
-
[fix]移除函数中Java serde的开箱即用选项 ^[7]^ @merlimat
-
[fix]JWT CLI 工具应强制执行令牌验证 ^[8]^ @merlimat
-
[fix][sec]升级Bouncycastle库以解决CVEs ^[9]^ @lhotari
-
[fix] [conf]修正配置名称和拼写错误。^[10]^ @thetumbled
-
[fix] [broker]默认禁用 loadBalancerDirectMemoryResourceWeight ^[11]^ @thetumbled
-
[fix] [broker]默认情况下禁用 loadBalancerMemoryResourceWeight ^[12]^ @thetumbled
-
[fix]将 io.airlift:aircompressor 从 0.20 升级到 0.27 ^[13]^ @dependabot[bot]
-
[fix][cli]修复通过 \"pulsar tokens create\" 创建的令牌过期问题 ^[14]^ @entvex
-
[fix][ci]修复在 x86 alpine 上 snappy-java 原生库加载失败 ^[15]^ @yaalsn
-
[fix] [broker]修正 ThresholdShedder 的文档并移除无用的方法。^[16]^ @thetumbled
-
[fix] [broker]仅在内存中维持最后活跃信息。^[17]^ @thetumbled
-
[fix][ml]修复 RangeCache 中的竞态条件 ^[18]^ @lhotari
-
[fix]将/pulsar-function-go中的google.golang.org/protobuf从1.32.0升级到1.33.0 ^[19]^ @dependabot[bot]
新特性
-
[improve]重构了BK ClientFactory,现在返回未来(futures)结果。^[20]^ @merlimat
-
[improve][build]在构建 Docker 镜像时支持 git worktree 工作目录 ^[21]^ @lhotari
-
[improve][broker]减少OpenTelemetry消费者属性数量 ^[22]^ @dragosvictor
-
[improve]将 Jetcd 升级到 0.7.7 并将 VertX 升级到 4.5.8 ^[23]^ @merlimat
-
[improve]验证Functions utils中的用户路径 ^[24]^ @merlimat
-
[improve]在long -> int转换前验证参数范围 ^[25]^ @merlimat
-
[improve]使用Google re2/j库处理用户提供的正则表达式 ^[26]^ @merlimat
-
[improve][misc]将 OTel 库升级到 1.38.0 版本 ^[27]^ @lhotari
-
[improve] [pip]PIP-357:在负载均衡模块中修正配置名称。^[28]^ @thetumbled
-
[improve][ml]RangeCache重构后续:使用StampedLock代替synchronized ^[29]^ @lhotari
-
[improve][ml]RangeCache 重构:测试竞争条件并防止无限循环 ^[30]^ @lhotari
-
[improve]升级到 Oxia client 0.3.0 ^[31]^ @zymap
-
[improve] [pip]PIP-356:支持从最早位置开始的地理复制 ^[32]^ @poorbarcode
-
[improve] [client]PIP-344 支持特性标志 supportsGetPartitionedMetadataWithoutAutoCreation ^[33]^ @poorbarcode
-
[improve][ci]添加 arm64 镜像构建 ^[34]^ @nodece
others
-
[feat][broker]PIP-264:增加broker web执行器指标 ^[35]^ @dragosvictor
-
[feat][broker]PIP-264:增加schema registry指标 ^[36]^ @dragosvictor
apache/bookkeeper
fix
- [fix]修复 Auditor 忽略了在 Auditor 启动之前关闭的 bookies ^[37]^ @dlg99
新特性
- [improve][tests]向后兼容性测试:新增版本,Pulsar升级案例,从旧服务器读取检查 ^[38]^ @dlg99
others
-
文档:修复 Google Kubernetes Engine 链接。^[39]^ @shoothzj
-
测试:在testSequenceReadLocalEnsemble中关闭bookkeeper客户端 ^[40]^ @shoothzj
-
任务:删除已废弃的配置项 ensemblePlacementPolicyOrderSlowBookies ^[41]^ @shoothzj
-
将RocksDB升级到版本7.10.2 ^[42]^ @dlg99
-
从 testDecommissionBookie 方法中移除 @FlakyTest 注解 ^[43]^ @shoothzj
-
修复Windows上的RocksDB配置路径处理问题 ^[44]^ @shoothzj
-
替换 assert 语句为显式检查^[45]^ @shoothzj
-
SingleDirectoryDbLedgerStorage 有时跳过乐观缓存写入 ^[46]^ @michaeljmarshall
-
防止因为 SingleDirectoryDbLedgerStorage 中的竞争引起的双重刷新 ^[47]^ @michaeljmarshall
-
修复 ledger-api 文档中的 bookkeeper-server-shaded 版本 ^[48]^ @yangl
-
在 AuditorPlacementPolicyCheckTest 中,将 RegistrationManager 放在 finally 块中关闭。^[49]^ @horizonzy
-
修复在getLogSegmentNames中的zkGetLogSegmentNames重复调用问题 ^[50]^ @AnonHxy
-
关闭为空的segments产生的烦人日志记录 ^[51]^ @mattisonchao
streamnative/function-mesh
others
- 调整一些代码以避免重复 ^[52]^ @jiangpengcheng
apache/pulsar-client-go
others
- [feat]PIP-188 支持蓝绿迁移 ^[53]^ @heesung-sn
apache/pulsar-helm-chart
others
-
添加 defaultPulsarImageRepository 配置 ^[54]^ @lhotari
-
升级 kube-prometheus-stack 到 59.x.x ^[55]^ @lhotari
-
支持 NodePort 代理服务 ^[56]^ @MMirelli
-
允许代理的服务 clusterIP 自定义 ^[57]^ @MMirelli
活动新闻
-
国内下一场 Meetup 计划将在北京举办,目前正在筹办中,相关合作等信息课联系 Pulsar Bot 咨询。
-
2024 年 7 月 26-28 日:阿帕奇软件基金会亚洲大会(CommunityOverCode Asia 2024)Messaging 专题^[58]^
参考资料
[1]
Apache Pulsar 3.3.0: https://pulsar.apache.org/release-notes/versioned/pulsar-3.3.0/
[2]
Apache Pulsar 3.3.0: https://pulsar.apache.org/release-notes/versioned/pulsar-3.3.0/
[3]
发版策略: https://pulsar.apache.org/contribute/release-policy/
[4]
[fix][meta]检查是否在 RocksdbMetadataStore 中关闭了元数据存储 : https://github.com/apache/pulsar/pull/22852
[5]
[fix]从BookieRackAffinityMapping中移除阻塞调用 : https://github.com/apache/pulsar/pull/22846
[6]
[fix] [broker]修复了Broker因为损坏的schema ledger导致无法加载stats-internal的问题。: https://github.com/apache/pulsar/pull/22845
[7]
[fix]移除函数中Java serde的开箱即用选项 : https://github.com/apache/pulsar/pull/22832
[8]
[fix]JWT CLI 工具应强制执行令牌验证 : https://github.com/apache/pulsar/pull/22831
[9]
[fix][sec]升级Bouncycastle库以解决CVEs : https://github.com/apache/pulsar/pull/22826
[10]
[fix] [conf]修正配置名称和拼写错误。: https://github.com/apache/pulsar/pull/22822
[11]
[fix] [broker]默认禁用 loadBalancerDirectMemoryResourceWeight : https://github.com/apache/pulsar/pull/22821
[12]
[fix] [broker]默认情况下禁用 loadBalancerMemoryResourceWeight : https://github.com/apache/pulsar/pull/22820
[13]
[fix]将 io.airlift:aircompressor 从 0.20 升级到 0.27 : https://github.com/apache/pulsar/pull/22819
[14]
[fix][cli]修复通过 "pulsar tokens create" 创建的令牌过期问题 : https://github.com/apache/pulsar/pull/22815
[15]
[fix][ci]修复在 x86 alpine 上 snappy-java 原生库加载失败 : https://github.com/apache/pulsar/pull/22804
[16]
[fix] [broker]修正 ThresholdShedder 的文档并移除无用的方法。: https://github.com/apache/pulsar/pull/22798
[17]
[fix] [broker]仅在内存中维持最后活跃信息。: https://github.com/apache/pulsar/pull/22794
[18]
[fix][ml]修复 RangeCache 中的竞态条件 : https://github.com/apache/pulsar/pull/22789
[19]
[fix]将/pulsar-function-go中的google.golang.org/protobuf从1.32.0升级到1.33.0 : https://github.com/apache/pulsar/pull/22261
[20]
[improve]重构了BK ClientFactory,现在返回未来(futures)结果。: https://github.com/apache/pulsar/pull/22853
[21]
[improve][build]在构建 Docker 镜像时支持 git worktree 工作目录 : https://github.com/apache/pulsar/pull/22851
[22]
[improve][broker]减少OpenTelemetry消费者属性数量 : https://github.com/apache/pulsar/pull/22837
[23]
[improve]将 Jetcd 升级到 0.7.7 并将 VertX 升级到 4.5.8 : https://github.com/apache/pulsar/pull/22835
[24]
[improve]验证Functions utils中的用户路径 : https://github.com/apache/pulsar/pull/22833
[25]
[improve]在long -> int转换前验证参数范围 : https://github.com/apache/pulsar/pull/22830
[26]
[improve]使用Google re2/j库处理用户提供的正则表达式 : https://github.com/apache/pulsar/pull/22829
[27]
[improve][misc]将 OTel 库升级到 1.38.0 版本 : https://github.com/apache/pulsar/pull/22825
[28]
[improve] [pip]PIP-357:在负载均衡模块中修正配置名称。: https://github.com/apache/pulsar/pull/22823
[29]
[improve][ml]RangeCache重构后续:使用StampedLock代替synchronized : https://github.com/apache/pulsar/pull/22818
[30]
[improve][ml]RangeCache 重构:测试竞争条件并防止无限循环 : https://github.com/apache/pulsar/pull/22814
[31]
[improve]升级到 Oxia client 0.3.0 : https://github.com/apache/pulsar/pull/22807
[32]
[improve] [pip]PIP-356:支持从最早位置开始的地理复制 : https://github.com/apache/pulsar/pull/22806
[33]
[improve] [client]PIP-344 支持特性标志 supportsGetPartitionedMetadataWithoutAutoCreation : https://github.com/apache/pulsar/pull/22773
[34]
[improve][ci]添加 arm64 镜像构建 : https://github.com/apache/pulsar/pull/22755
[35]
[feat][broker]PIP-264:增加broker web执行器指标 : https://github.com/apache/pulsar/pull/22816
[36]
[feat][broker]PIP-264:增加schema registry指标 : https://github.com/apache/pulsar/pull/22624
[37]
[fix]修复 Auditor 忽略了在 Auditor 启动之前关闭的 bookies : https://github.com/apache/bookkeeper/pull/4419
[38]
[improve][tests]向后兼容性测试:新增版本,Pulsar升级案例,从旧服务器读取检查 : https://github.com/apache/bookkeeper/pull/3981
[39]
文档:修复 Google Kubernetes Engine 链接。: https://github.com/apache/bookkeeper/pull/4418
[40]
测试:在testSequenceReadLocalEnsemble中关闭bookkeeper客户端 : https://github.com/apache/bookkeeper/pull/4416
[41]
任务:删除已废弃的配置项 ensemblePlacementPolicyOrderSlowBookies : https://github.com/apache/bookkeeper/pull/4415
[42]
将RocksDB升级到版本7.10.2 : https://github.com/apache/bookkeeper/pull/4413
[43]
从 testDecommissionBookie 方法中移除 @FlakyTest 注解 : https://github.com/apache/bookkeeper/pull/4408
[44]
修复Windows上的RocksDB配置路径处理问题 : https://github.com/apache/bookkeeper/pull/4407
[45]
替换 assert 语句为显式检查: https://github.com/apache/bookkeeper/pull/4390
[46]
SingleDirectoryDbLedgerStorage 有时跳过乐观缓存写入 : https://github.com/apache/bookkeeper/pull/4306
[47]
防止因为 SingleDirectoryDbLedgerStorage 中的竞争引起的双重刷新 : https://github.com/apache/bookkeeper/pull/4305
[48]
修复 ledger-api 文档中的 bookkeeper-server-shaded 版本 : https://github.com/apache/bookkeeper/pull/4108
[49]
在 AuditorPlacementPolicyCheckTest 中,将 RegistrationManager 放在 finally 块中关闭。: https://github.com/apache/bookkeeper/pull/4080
[50]
修复在getLogSegmentNames中的zkGetLogSegmentNames重复调用问题 : https://github.com/apache/bookkeeper/pull/4050
[51]
关闭为空的segments产生的烦人日志记录 : https://github.com/apache/bookkeeper/pull/4048
[52]
调整一些代码以避免重复 : https://github.com/streamnative/function-mesh/pull/760
[53]
[feat]PIP-188 支持蓝绿迁移 : https://github.com/apache/pulsar-client-go/pull/1210
[54]
添加 defaultPulsarImageRepository 配置 : https://github.com/apache/pulsar-helm-chart/pull/503
[55]
升级 kube-prometheus-stack 到 59.x.x : https://github.com/apache/pulsar-helm-chart/pull/502
[56]
支持 NodePort 代理服务 : https://github.com/apache/pulsar-helm-chart/pull/500
[57]
允许代理的服务 clusterIP 自定义 : https://github.com/apache/pulsar-helm-chart/pull/498
[58]
CommunityOverCode Asia 2024 议题征集正式启动!: https://mp.weixin.qq.com/s/byAbsKwC7XofWwxGBiylCw
联系我们
"
Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据存储特性。GitHub 地址:http://github.com/apache/pulsar/
"
Pulsar 中文社区 Logo(部分)
诚挚邀请您加入 Apache Pulsar 社区,与全球开发者一起学习、分享和成长,共同塑造云原生消息流平台的未来,一起打造更加开放和高效的开源技术生态!
Pulsar 进群说明
推荐阅读
干货文章
技术探究 | Flipkart 带来 Apache Pulsar 集群调优指南
Apache Pulsar 为滴滴大数据运维带来了哪些收益?
技术探究 | 得物技术对 BookKeeper 存储架构做源码级剖析