脉冲星 8 月脉动 | Pulsar Summit 亚洲峰会 2021 议题征集中!
关于 Apache Pulsar
Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据存储特性。
GitHub 地址:http://github.com/apache/pulsar/
导语
各位小伙伴们,2021 年 8 月 Pulsar 社区月报来啦!
感谢以下各位社区成员本月对 Pulsar 项目的支持,让 Apache Pulsar 继续发光发热!(排名不分先后,仅限于 GitHub 代码仓库提交记录,看看你有没有上榜 🏆🏆):
@codelipenghui, @Sunny-Island, @gaoran10, @Demogorgon314, @Technoboy-, @frankxieke, @urfreespace, @lhotari, @aloyszhang, @HugoPelletier, @MarvinCai, @massakam, @WJL3333, @equanz, @congbobo184, @goldstar611, @galrose, @tuteng, @liangyepianzhou, @hangc0276, @tspannhw, @dlg99, @oversearch, @freeznet, @Jennifer88huang, @timmyyuan, @Anonymitaet,@ kaushik-develop, @eolivelli, @vroyer, @315157973, @gaozhangmin,@jerrypeng, @BewareMyPower, @rdhabalia,@wuzhanpeng, @sanjivr, @Jason918, @leizhiyuan, @JipeiWang, @sijie, @sijia-w, @merlimat, @wongxingjun, @abhilashmandaliya, @bharanic-dev, @Shoothzj, @ivankelly, @michaeljmarshall, @Nicklee007, @nemecec, @dave2wave, @nicoloboschi
重要进展
Admin
[Admin] 避免重复删除 schema。
https://github.com/apache/pulsar/pull/11640
[Admin] 允许用户通过 pulsar-admin 使用 package URL 创建 function。
https://github.com/apache/pulsar/pull/11666
Broker
[Broker] broker 增加额外的 servlet 支持。
https://github.com/apache/pulsar/pull/11498
[Broker] 压缩 ManagedLedgerInfo。
https://github.com/apache/pulsar/pull/11490
[Broker] 为命名空间指标项增加 AddEntryWithReplicasBytesRate。
https://github.com/apache/pulsar/pull/11472
[Broker] 管理员 Topic 统计增加 ledger 分层存储信息。
https://github.com/apache/pulsar/pull/11465
[Broker] 跨集群复制 schema 信息。
https://github.com/apache/pulsar/pull/11441
[Broker] 添加指标统计游标读写数量。
https://github.com/apache/pulsar/pull/11500
[Broker] 在非持久化 topic 关闭 Reader 时,移除订阅。
https://github.com/apache/pulsar/pull/11731
[Broker] 支持禁用非 TLS 的服务端口。
https://github.com/apache/pulsar/pull/11681
[Broker] 允许 broker 以默认的 backlogquota 配置启动。
https://github.com/apache/pulsar/pull/11671
[Broker] 为 ManagedLedgerFactoryImpl 添加 shutdownGracefully。
https://github.com/apache/pulsar/pull/11517
[Broker] 将 Air Compressor 升级至 0.20 版本。
https://github.com/apache/pulsar/pull/11790
[Broker] 撤销 PR-11594,避免将数据复制到堆外缓冲区。
https://github.com/apache/pulsar/pull/11792
Client
[C++ Client] 简化了 C++ 客户端获取引用数的实现。
https://github.com/apache/pulsar/pull/11535
[Python Client] Python schema 支持与 Record 配合的 Array、Map 类型。
https://github.com/apache/pulsar/pull/11530
[Python Client] 向 Python 客户端的 Reader API 添加 CryptoKeyReader 支持。
https://github.com/apache/pulsar/pull/11447
[Java Client] 移除 Pulsar 实现类运行时的反射。
https://github.com/apache/pulsar/pull/11636
Functions
[Functions] 支持 protobuf schema。
https://github.com/apache/pulsar/pull/11709
[Functions] 修复 terminateFunction 未清理 batch source intermediate topics 导致的 topic 泄露问题。
https://github.com/apache/pulsar/pull/11679
[Function] 支持基于 Java 的 function 与 source 的 KEY_BASED 批处理生成器。
https://github.com/apache/pulsar/pull/11706
网站
[Website] 自动化生成 pulsar 子命令 websocket 文档。
https://github.com/apache/pulsar/pull/11364
[Website] 自动化生成 pulsar 子命令 discovery 文档。
https://github.com/apache/pulsar/pull/11358
[Website] 自动化生成子命令 initialize-cluster-metadata 文档。
https://github.com/apache/pulsar/pull/11327
[Website] 自动化生成子命令 functions-worker 文档。
https://github.com/apache/pulsar/pull/11326
[Website] 升级 Pulsar 网站初始框架。
https://github.com/apache/pulsar/pull/11770
其他
[Build] 将Ubuntu:20.04 做为基础镜像用来制作 Pulsar 容器镜像。
https://github.com/apache/pulsar/pull/11026
[Transaction] 修复 Pulsar 2.8.0 在单机模式下,开启 transaction 时无法正常工作的问题。
https://github.com/apache/pulsar/pull/11494
[PIP 83] 允许 Reader API 读取和发布池化消息。
https://github.com/apache/pulsar/pull/11725
[Pulsar IO] 将 client builder 传递给 debezium 数据库历史记录。
https://github.com/apache/pulsar/pull/11293
[Java] 调整结构化日志的接口。
https://github.com/apache/pulsar/pull/11800
[Test] 使用 TestRetrySupport 作为 BaseMetadataStoreTests 清理重试之间的状态。
https://github.com/apache/pulsar/pull/11771
Bug 修复
Broker
[Broker] 修复删除命名空间时所有 web 线程被卡住的问题。
https://github.com/apache/pulsar/pull/11596
[Broker] 引入回退设置来修复一些主题策略操作问题。
https://github.com/apache/pulsar/pull/11560
[Broker] 修复当使用最早位置订阅主题时数据丢失的问题。
https://github.com/apache/pulsar/pull/11547
[Broker] 将 orElse 替换为 orElseGet。
https://github.com/apache/pulsar/pull/11542
[Broker] 修复基于时间 backlog 配额问题。
https://github.com/apache/pulsar/pull/11509
[Broker] 完善 OffloadPolicysImplBuilder 缺少 OffloadPolicies.Builder 未实现的方法。
https://github.com/apache/pulsar/pull/11453
[Broker] 修复当 preciseTopicPublishRateLimiterEnable=true 时生产消息的问题。
https://github.com/apache/pulsar/pull/11442
[Broker] 修复远端生产者已关闭时复制订阅无法复制新订阅的问题。
https://github.com/apache/pulsar/pull/11382
[Broker] 使用二进制查找服务验证 GetTopicsOfNamespace。
https://github.com/apache/pulsar/pull/11172
[Broker] 修复使用 preciseTopicPublishRateLimiterEnable=true 时 set-publish-rate 的问题。
https://github.com/apache/pulsar/pull/10384
[Broker] 利用 getIfValid 方法来避免 handleMetadataStoreNotification 吞并异常。
https://github.com/apache/pulsar/pull/11656
[Broker] 修复在启用 topic 元数据压缩时,java.nio.ByteBuffer.position(I)Ljava/nio/ByteBuffer出现的 java.lang.NoSuchMethodError 异常。
https://github.com/apache/pulsar/pull/11594
[Broker] 修复 getPreviousPosition 的空指针异常。
https://github.com/apache/pulsar/pull/11621
[Broker] 避免从 offloader 获取 offload 策略时的重复调用。
https://github.com/apache/pulsar/pull/11629
[Broker] 使用 get 代替 join 来避免阻塞。
https://github.com/apache/pulsar/pull/11597
[Broker] 修复集群在抛出 InterceptException 时不返回错误消息的问题。
https://github.com/apache/pulsar/pull/11650
[Broker] 在 ResourceGroupPublishLimiter 内将 executor 传给 RateLimiter.
https://github.com/apache/pulsar/pull/11582
[Broker] 修复处于隔离状态的 topic 无法恢复的问题。
https://github.com/apache/pulsar/pull/11737
[Broker] 丢弃 entry 时调用 .release() 以防止直接内存泄漏。
https://github.com/apache/pulsar/pull/11748
[Broker] 修复关闭 producer 会触发从 map 中移除的问题。
https://github.com/apache/pulsar/pull/11804
[Broker] 发送消息超时时释放内存。
https://github.com/apache/pulsar/pull/11761
Client
[Java Client] 避免为已配置的 reader 创建新的订阅名称。
https://github.com/apache/pulsar/pull/11586
[C++ Client] 修复 Base64 padding 的错误。
https://github.com/apache/pulsar/pull/11578
[Python Client] 增加 record 是否为 None 检查。
https://github.com/apache/pulsar/pull/11559
[C++/Python] 修复 CI 测试 bug.
https://github.com/apache/pulsar/pull/11557
[Java Client] 修复消费者监听响应没有队列大小的问题。
https://github.com/apache/pulsar/pull/11455
[Python Client] 修复忽略所需 key 参数的字段。
https://github.com/apache/pulsar/pull/11508
[C++ Client] 修复 UnAckedMessageTrackerEnabled 中对象释放重用和构造器的相关问题。
https://github.com/apache/pulsar/pull/11630
[Java Client] 修复值为 Null 的 MessageId 可能传递给 compareTo() 方法的问题。
https://github.com/apache/pulsar/pull/11607
[Client] 在 Message.getTopicName() API 中设置并返回 Topic 名称。
https://github.com/apache/pulsar/pull/11743
[Client] 为 rejected 的响应添加 Timeout 配置参数。
https://github.com/apache/pulsar/pull/11688
[Client] 修复在用户队列中排队后方可访问 MessageImpl 的问题。
https://github.com/apache/pulsar/pull/11824
[Client] 修复了多 topic consumer 的竞争条件。
https://github.com/apache/pulsar/pull/11764
其他
[Admin] 修复当更新的 topic 名称包含在已存在的 topic 中时,topic 无法更新的问题。
https://github.com/apache/pulsar/pull/11686
[Admin] 删除命名空间时清理 Znode 数据。
https://github.com/apache/pulsar/pull/11791
[Build] 修复 java_test_functions 构建失败的问题。
https://github.com/apache/pulsar/pull/11829
[Build] 修复在 pulsar/pulsarbroker 和 pulsar/pulsartransaction/coordinator 运行 mvn install -DskipTests 失败的问题。
https://github.com/apache/pulsar/pull/11795
[WebSocket] 在禁用死信队列情况下让查询参数 NegativeAcryDeliveryDelay 生效。
https://github.com/apache/pulsar/pull/11495
[Flaky test] 修复 ManagedLedgerTest.testLedgerReachMaximumRolloverTime。
https://github.com/apache/pulsar/pull/11670
[Tests] 修复 testReacquireLocksAfterSessionLost flaky test 。
https://github.com/apache/pulsar/pull/11815
[Security] 将 Jetty 升级至 9.4.43.v20210629 版本。
https://github.com/apache/pulsar/pull/11660
[Transaction] 修复当 topic 或者 sub 被删除后,transaction buffer client 处理 endTxn 操作时的问题。
https://github.com/apache/pulsar/pull/11304
[Python Schema] 修复 Python Schema 重新定义 Record/Enum 的问题。
https://github.com/apache/pulsar/pull/11595
[Function] 修复 Function/Source/Sink 类型是 ByteBuffer 时出现的类型转换异常。
https://github.com/apache/pulsar/pull/11611
[C++] 修复 broker 无限制向 consumer 推消息导致 consumer 出现的内存使用的问题。
https://github.com/apache/pulsar/pull/11692
[C++] 使一些清理方法线程安全。
https://github.com/apache/pulsar/pull/11762
[Package Management] 修复 wrappedBuffer 始终使用相同内存块的问题。
https://github.com/apache/pulsar/pull/11782
活动与干货
活动
- 公告
- 欢迎新晋 Apache Pulsar Committer 成员付睿!
- Apache Pulsar 生态项目 KoP 新增 Maintainer:吴展鹏
- 欢迎 2 位新晋 Apache Pulsar PMC 成员:林琳与陈航
- 中文社区
- 截至 9 月 30 日:议题征集 | Pulsar Summit Asia 2021 正式启动,开启演讲议题征集!
- 9 月 11 日:Apache Pulsar x Apache APISIX 线上直播
- 英文社区
- TGIP:Pulsar 及其生态系统[1]
- 9 月 9 日: Webinar Series - Building Microservices with Pulsar[2]
- 9 月 16 日: Apache Pulsar Deep Dive, an end-to-end view of the data flow[3]
- 9 月 21-23 日: ApacheCon 2021[4]
- 9 月 30 日: Apache Pulsar Meetup Japan[5]
- 10 月 6 日: Pulsar Virtual Summit Europe 2021[6]
博文
- 博文干货|5张图带你快速入门 Pulsar 的存储引擎 BookKeeper
- 直播回顾|TGIP-CN 035: Apache Pulsar 动手实战第二期:容器部署实战
- 博文推荐|有效管理数据安全性—— Pulsar Schema 管理
- 优雅的故障处理:快速创建 Pulsar 重试队列
- 在 Docker 环境配置 Pulsar Producer 与Consumer[7]
-视频回顾|Apache Hudi x Apache Pulsar Meetup 杭州站
生态
-Pulsar 客户端更新 | Go Client 0.6、Node.js Client 1.4.0 版本发布
- 项目动态 | Apache Pulsar 2.7.3 版本介绍
相关阅读
-脉冲星 7 月脉动
-脉冲星 6 月脉动
以上就是 2021 年 8 月份的脉动之旅,在此感谢参与周报与博客翻译整理的社区志愿者们:段嘉 Janus、姜吉宁 Jimmy,本月报内容也是基于上述志愿者的贡献汇总而成,再次感谢!如果你也想参与我们的社区志愿工作,欢迎加入!
Apache Pulsar 社区鼓励大家积极参与开源社区,无论是文档、代码、翻译,还是技术博客,都欢迎大家积极参与,早日成为 Pulsar contributor,一起加油鸭。
引用链接
[1] TGIP:Pulsar 及其生态系统: https://streamnative.io/resource#tgip
[2] Webinar Series - Building Microservices with Pulsar: https://streamnative.zoom.us/webinar/register/WN_0vVCCqGhQ4G1978pZvxwZg
[3] Apache Pulsar Deep Dive, an end-to-end view of the data flow: https://www.meetup.com/netherlands-apache-pulsar-meetup/events/280174947/
[4] ApacheCon 2021: https://www.apachecon.com/acah2021/
[5] Apache Pulsar Meetup Japan: https://japan-pulsar-user-group.connpass.com/event/222026/
[6] Pulsar Virtual Summit Europe 2021: https://hopin.com/events/pulsar-summit-europe-2021
[7] 在 Docker 环境配置 Pulsar Producer 与Consumer: https://www.lionbloggertech.com/setup-producer-consumer-for-apache-pulsar-running-on-docker/
ApachePulsar
Apache 软件基金会顶级项目,下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据存储特性。
posted on 2021-09-13 10:22 Apache-Pulsar 阅读(280) 评论(0) 编辑 收藏 举报