Pulsar 周报由 StreamNative 翻译整理。原文内容来自 StreamNative 官网 Pulsar 周报模块 https://streamnative.io/weekly。 
本期编辑:Tango@StreamNative。

关于 Apache Pulsar

Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据存储特性。

GitHub 地址:http://github.com/apache/pulsar/

导语

各位小伙伴们,Pulsar 社区周报更新来啦!

本次 Pulsar 社区周报,为大家呈现 Pulsar client、broker、transactions 等内容,帮助社区小伙伴们掌握 Pulsar 项目及社区每周进展,也方便大家更好地参与到 Pulsar 社区中来!

感谢本周以下小伙伴为 Apache Pulsar 添砖加瓦(排名不分先后,看看你有没有上榜):

linlinnn、lhotari、bdunn313、315157973、eolivelli、congbobo184、MarvinCai、michaeljmarshall、oversearch、ravi-vaidyanathan、Anonymitaet、kaushik-develop、bharanic-dev、gaoran10、hangc0276、abhilashmandaliya

接下来,一起看看 4 月 12 日 ~ 4 月 18 日有哪些值得你关注的进展吧!

本周亮点

在 SinkRecord#getSchema 中,解开 AutoConsumeSchema schema 以访问在该 topic 上设置的实际 schema。该操作允许使用 KeyValue schema 来处理 topic。
贡献者:@eolivelli

重要进展

[PIP-82] Broker:实现 ResourceGroup 服务,使用情况数据收集和配额计算。
https://github.com/apache/pulsar/pull/10204
贡献者:@kaushik-develop

重要特性

•因为 PR 较多,仅列举较大 PR 进展,不包括当周全部动态
•下面 PR 均已合入 Pulsar 主分支

CLI:将 metrics-port-start 本地运行配置暴露给 CLI。
https://github.com/apache/pulsar/pull/10185
贡献者:@jerrypeng

Schema Registry:使用 SEPARATED 编码处理 KeyValue。
https://github.com/apache/pulsar/pull/10186
贡献者:@eolivelli

Tests:对集成测试、阴影测试和向后兼容性测试启用测试重试。
https://github.com/apache/pulsar/pull/10191
贡献者:@lhotari

CI:移动经常无法隔离测试组的 flaky test。
https://github.com/apache/pulsar/pull/10148
贡献者:@lhotari

Tests:添加 TestNG listener 以减轻资源清理问题。
https://github.com/apache/pulsar/pull/10195
贡献者:@lhotari

CI:将当前 IP 地址、长主机名和短主机名添加到 /etc/hosts 中。
https://github.com/apache/pulsar/pull/10233
贡献者:@lhotari

CI:调整 GitHub Runner VM 选项以增加工作中的 RAM 并提高性能。
https://github.com/apache/pulsar/pull/10239
贡献者:@lhotari

Admin:支持 API 从每个 topic 或 partition 的单独 MessageId 开始。
https://github.com/apache/pulsar/pull/10033
贡献者:@315157973

Transactions:Pulsar 独立模式支持 transaction。
https://github.com/apache/pulsar/pull/10238
贡献者:@congbobo184

Tests:清理 PulsarClient 实例。
https://github.com/apache/pulsar/pull/10197
贡献者:@lhotari

WebSocket Client:为 WebSocket URL 的 token 参数值删除 Bearer 前缀。
https://github.com/apache/pulsar/pull/10187
贡献者:@gaoran10

Broker:将 preciseTopicPublishRateLimiterEnable 添加至 broker.conf 文件。
https://github.com/apache/pulsar/pull/10216
贡献者:@lhotari

Tests:通常情况下 broker 会正常关闭,但当达到 brokerShutdownTimeoutMs 时,应该强制关闭 broker。
https://github.com/apache/pulsar/pull/10199
贡献者:@lhotari

Tests:加快 flaky test 组的执行速度,并提高测试 listener 的测试覆盖率。
https://github.com/apache/pulsar/pull/10249
贡献者:@lhotari

Schema Registry:解开内部的 AutoConsumeSchema 以处理支持 KeyValue schema 类型的 topic。
https://github.com/apache/pulsar/pull/10211
贡献者:@eolivelli

重要 Bug 修复

•因修复内容较多,仅列举较重要修复内容,不包括本周全部动态
•下面修复均已合入 Pulsar 主分支

Tests:为 “+ Inf” 修复 PrometheusMetricsTest 和 Pulsar Function 测试中的 Prometheus 指标解析。
https://github.com/apache/pulsar/pull/10193
贡献者:@lhotari

Client:修复内存泄漏问题。
https://github.com/apache/pulsar/pull/10028
贡献者:@abhilashmandaliya

Build:修复 buildtools/pom.xml 文件中有关 parent.relativePath 的警告。
https://github.com/apache/pulsar/pull/10194
贡献者:@lhotari

Tests:取消注册 JettyStatisticsCollector 来修复关闭 broker 时的内存泄漏。
https://github.com/apache/pulsar/pull/10192
贡献者:@lhotari

Tests:修复一些 ExecutorService 泄露的问题。
https://github.com/apache/pulsar/pull/10198
贡献者:@lhotari

Broker:在进行身份验证刷新时更新身份验证数据。
https://github.com/apache/pulsar/pull/10203
贡献者:@kaushik-develop

Broker:当 PulsarService 关闭时,关闭 namespace client。
https://github.com/apache/pulsar/pull/10196
贡献者:@lhotari

Enhancement:在不破坏公共 API 的情况下,将 chuckedMessageRate ”修正为 chunkedMessageRate。
https://github.com/apache/pulsar/pull/10223
贡献者:@michaeljmarshall

Security:将 JUnit 版本升级到 4.13.1,以修复 CVE-2020-15250 并修复测试依赖项泄漏的问题。
https://github.com/apache/pulsar/pull/10147
贡献者:@lhotari

ManagedLedger:修复 entry cache 大小的更新逻辑,以防止其获得负值。
https://github.com/apache/pulsar/pull/10225
贡献者:@MarvinCai

CLI:修复 CmdTopics 中的 NPE 问题。
https://github.com/apache/pulsar/pull/10178
贡献者:@linlinnn

Tests:修复测试中的 TCP 端口冲突。
https://github.com/apache/pulsar/pull/10209
贡献者:@lhotari

Tests:修正针对阴影测试和向后兼容性测试的测试重试。
https://github.com/apache/pulsar/pull/10207
贡献者:@lhotari

Broker:查找 topic 时删除不必要的 bundle listener 触发器。
https://github.com/apache/pulsar/pull/10126
贡献者:@hangc0276

Broker:修复了与 “LightProto” 问题相关的复制订阅。
https://github.com/apache/pulsar/pull/10247
贡献者:@lhotari

C++:修复由于对象生存期问题而导致的释放后使用的未定义行为。
https://github.com/apache/pulsar/pull/10220
贡献者:@oversearch

Broker:修复 master 分支中的编译失败的问题。
https://github.com/apache/pulsar/pull/10250
贡献者:@lhotari

Security:将 jclouds 升级到 2.3.0 版本以修复安全漏洞。
https://github.com/apache/pulsar/pull/10149
贡献者:@lhotari

[Client] Proxy:创建响应消息的副本,然后将其通过 CompletableFuture 传递给其他线程。
https://github.com/apache/pulsar/pull/10215
贡献者:@lhotari

活动和新闻

•报名 Apache Pulsar Hackathon[1]•报名 Pulsar Virtual Summit North America 2021[2]•TGIP:Pulsar 及其生态系统[3]•TGIP-CN:Pulsar 及其生态系统[4]

 


作为全球性开源项目,截至 2021 年 4 月 18 日,Apache Pulsar 已拥有 390 名贡献者、7.7K+ Star 、1.9K+ Fork 。正是由于分布在全球各地的社区开发者的贡献,才使得 Apache Pulsar 项目不断发展与前进。

让我们期待下一周的 Apache Pulsar 周报!

如果你也想为 Apache Pulsar 项目出一份力、成为我们的 Contributor,参考下面链接,来加入我们吧:

Apache Pulsar 官方贡献指南[5]