搜索
搜 索
本版
文章
帖子
用户
图文精华
hadoop-2.6.0+zookeeper-3.4.6+hbase-1.0.0+hive-1.1.0完全分布 ...
首页
Portal
专题
BBS
面试
更多
登录
注册
用户组:游客
主题
帖子
云币
我的帖子
我的收藏
我的好友
我的勋章
设置
退出
导读
淘贴
博客
群组
社区VIP
APP下载
今日排行
本周排行
本周热帖
本月排行
本月热帖
会员排行
About云-梭伦科技
»
专题
›
技术学习(版主发帖区)
›
大数据学习
›
Kafka
›
其它
›
Apache Pulsar2.5.1 版本发布:新特性介绍
1
1
1
分享
Apache Pulsar2.5.1 版本发布:新特性介绍
hyj
2020-5-5 17:03:23
发表于
其它
[显示全部楼层]
阅读模式
关闭右栏
1
3511
问题导读
1.Pulsar2.5.1 修复了哪些漏洞?
2.新版本做了哪些改进?
3.如何下载Pulsar2.5.1 ?
2020 年 04 月 23 日,Apache Pulsar 正式发布了 2.5.1 版本。
Apache Pulsar 2.5.1 版本合并了社区的 131 个 PR,修复了大量漏洞,涵盖 Broker、客户端、Pulsar Functions、connectors 等,进一步丰富和完善了 Pulsar 作为一个云原生流数据平台的能力。
在这篇文章中,我们将会为大家详细解读 2.5.1 中修复、改进的特性。
01 漏洞修复
Broker
修复在禁用自动创建 topic 的时候,在 partitioned topic 上创建 consumer。[PR-5572]
修复 consumer 统计数据中的 negative unack 的消息。[PR-5929]
修复无法创建或更新包含 global 的集群的租户。[PR-6275]
当 topic 名称与分区名称一致时,避免获取分区元数据。[PR-6339]
支持使用现有 topic 名称的 substring 创建分区 topic。[PR-6478]
修复因运行 topic compaction 导致的内存泄露问题。[PR-6485]
解决在 batch 模式下创建 topic 时,Admin 的`getLastMessageId` 无法获取 `batchIndex` 的问题。[PR-6511]
修复无法将只包含一个分区的 topic 升级成为包含多个分区的 topic 问题。[PR-6560]
修复 putShema() 运行中产生的 `BadVersionException` 异常情况。[PR-6683]
在 `Policies` class 中,重新启用 `clusterDispatchRate` 字段,用于设置 topic-level 排空速率,以便实现新老版本的兼容性。[PR-6176]
在 broker.conf 文件中显示 BookKeeper `explicit lac` 的配置信息,以便用户使能 `explicitLacInterval`,获取 Pulsar SQL 中的最新消息。[PR-5822]
支持在命名空间使能或禁用消息延迟发送的功能。[PR-5915]
避免在现有的分区 topic上创建同名的 regular topic。[PR-5943]
修复 cursor 重置问题,避免出现 `InvalidCursorPosition Exception` 问题。[PR-6120]
修复 BrokerService 中的 Timeout API 调用,为在 BrokerService 中创建的所有 futures 设置 deadline。[PR-6235]
修复 `PersistentTopicsBase` 的一些 async 方法问题。[PR-6483]
Pulsar Proxy
修正 Pulsar proxy 线程执行器名称。[PR-6460]
修复已发布消息的日志问题。[PR-6474]
修复 Pulsar proxy 到 Functions worker 的路由问题。[PR-6486]
Stats & Monitoring
在 `topicStats` 中添加 `backlogSize`。[PR-5914]
在 consumer 统计信息中,显示 `lastConsumedTimestamp` 和 `lastAckedTimestamp` 信息。[PR-6051]
改进 Topic 中 backlogSize 的统计。[PR-6700]
Security
修复发布 buffer 限制不生效的问题。[PR-6431]
修复 `authenticationData` 无法初始化的问题。[PR-6440]
为二进制连接验证 token。[PR-6233]
修复在 Standalone 模式下使能 TLS 后,namespace 创建失败的问题。[PR-6457]
为 topic 提供更多颗粒度许可。[PR-6504]
Pulsar Schema
修复在 `HttpLookupService` 获取 schema 版本问题。[PR-6193]
为 topic 生成的 consumer 设置独立的 schema。[PR-6356]
修复错误的 Avro schema。[PR-6406]
修复 Functions 中 Avro scheme 解码错误问问题。[PR-6662]
为 `SchemaDefinitionBuilderImpl.java` 添加验证。[PR-6405]
Pulsar Functions
修复 Window Functions 部署问题。[PR-6246]
在 `PulsarSinkEffectivelyOnceProcessor` 中移除 `future.join()` 参数。[PR-6361]
Java client
修复即使当队列值设置为 0 时,可用的 permit 值大于 1 的问题。[PR-6106]
修复 broker 客户端 TLS 设置错误问题。[PR-6128]
修复当为 batch topic 启动 reader 时,reader 读取 batch topic 中的第一条消息的问题。[PR-6345]
修复 `hasMessageAvailable()`。[PR-6362]
删除重复的 key,以便发送属性。[PR-6390]
修复由于两次调度发现任务,而导致 multitopic 发现终止的问题。[PR-6407]
修复发送失败时的 deadlock 问题。[PR-6488]
删除重复的 `cnx` 方法。[PR-6490]
使用 `System.nanoTime()` 计算运行时间。[PR-6454]
C++ client
修复 MacOS 平台上 C++ 库的静态链接问题。[PR-5581]
修复 ExecutorService destructor 的内存损坏问题。[PR-6270]
修复 NegativeAcksTracker 如何处理已取消的定时器事件问题。[PR-6272]
修复当 Pulsar 客户端关闭时可能产生的 deadlock 问题。[PR-6277]
修复在 Windows 平台上搭建 CMake 时遇到的问题,主要包括为与 Windows 版本相匹配的 zlib、protobuf、curl 库提供更多库名。[PR-6336]
利用时间分区修复 `UnAckedMessageTracker` 问题。将 `acktimeout` 划分为几个时间分区,这样用户就可以定义再发送周期。[PR-6391]
修复将已确认消息作为未确认消息再次发送的问题。由于将 `acktimeout` 划分为几个时间分区,一些已确认消息作为未确认消息会被再次发送。[PR-6498]
当消息列表为空时,避免调用 `redeliverMessages()`,否则导致立即发送所有未确认消息。[PR-6480]
在 Debian 或 RPM 中再提供一个 `libpulsarwithdeps.a`,以避免安全问题。[PR-6458]
Python Client
修复无法找到 enum34 包的问题。[PR-6401]
支持在 Python 3.8上安装 Pulsar 客户端。[PR-6741]
Pulsar Websocket
修复 WebSocket 无法设置正确的集群数据的问题。[PR-6102]
Kubernetes
在 `values-mini.yaml` 文件中,明确说明 `BOOKIE_MEM` 和 `BOOKIE_GC`。[PR-6340]
将自动修复特性的 configmap 中的 `PULSAR_MEM` 改为 `BOOKIE_MEM`,解决执行自动修复时,提示的 `could not find or load main clas` 问题。[PR-6373]
在 `proxy-deployment.yaml` helm 模版中,定义一个新的 init container,解决因未启动 Broker 就启动 proxy 带来的 HTTP 403 问题。[PR-6158]
为 dashboard-ingress 添加缺失的检查。[PR-6160]
确保为 Bookie 设置了 JVM 内存和 GC 选项。[PR-6201]
修复运行 Kubernetes 时,使用缺省 `functionAuthProvider` 的问题。[PR-6203]
Adaptors
确保总是可以从缓存中获取已启动的 Pulsar 客户端。当缓存中的 Pulsar 客户端被关闭后,PulsarConsumerSource 重用 Pulsar client 时会产生异常情况并不断报错。[PR-6436]
02 优化改进
Broker
支持从 broker 缓存中移除已关闭的 producer,以便创建新的 producer,并有助于避免消息发布失败。[PR-5988]
支持删除已被读取所有信息,且没有活跃的 producer 或 consumer 的 topic。[PR-6077]
添加一条信息,用以说明在启动组件时如何立即刷新日志。[PR-6078]
支持将资源利用率输出至日志。[PR-6152]
引入 maxMessagePublishBufferSizeInMB 配置,避免 broker 内存溢出(OOM)。[PR-6178]
配置 `getNumberOfEntriesInBacklog(boolean isPrecise)`和 `msg_backlog_non_delayed` 参数,获取 backlog 的准确数量和不包含延迟消息的 backlog 的数量。[PR-6310]
当禁用自动创建 topic 功能时,不允许 Admin 自动创建订阅。[PR-6685]
ZooKeeper
支持在为 partitioned topic 创建分区时,在本地 ZooKeeper 创建受管 ledger 路径。[PR-6189]
将 ZooKeeper 升级至 3.5.7 版本。[PR-6329]
支持在取消调用发生异常的 `Future` 之前,关闭 ZooKeeper。[PR-6399]
Client
将 `BatchMessageIdImpl` 的 `acker` 参数设置为 `transient`,避免其打破序列化。[PR-6064]
使用 `JSONAssert` 参数并修改相关的 JSON 测试断言,以便提供更稳定的测试。[PR-6247]
Managed Ledger
增加 `OpAddEntry` 状态设置,避免不同的 ledger handle 使用同一个 OpAddEntry。[PR-5942]
Pulsar Admin
允许租户管理员管理订阅权限。[PR-6122]
03 下载链接
Pulsar 2.5.1 的下载链接:
https://pulsar.apache.org/download/
Pulsar 项目链接:
https://pulsar.incubator.apache.org/
Pulsar GitHub 代码库:
http://github.com/apache/pulsar
Pulsar Slack channel:
https://apache-pulsar.herokuapp.com/
Pulsar 邮件列表:
https://pulsar.incubator.apache.org/contact/
原文链接
https://mp.weixin.qq.com/s/WE-e4tOdsYnLOWunKYRuig
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
已有(1)人评论
电梯直达
正序浏览
美丽天空
发表于 2020-5-6 10:51:14
感谢分享
回复
使用道具
举报
显身卡
还有一些帖子被系统自动隐藏,点此展开
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
发表新帖
hyj
超级版主
关注
1689
主题
2215
帖子
469
粉丝
TA的主题
ChatGPT上线了IOS app,很给力
2023-5-19
About云2023年05月19日每日一读
2023-5-19
数澜科技数据中台项目规范-V1.0.0
2023-5-18
现代数据架构
2023-5-18
12 个真正重要的数据质量指标
2023-5-18
24小时热文
找工作很难,为什么我一天三个机会
股票魔法师.Ⅲ,趋势交易圆桌访谈
大数据面试题
我如何从股市赚了200万(珍藏版)
投资心理学(原书第5版) (华章经典&金融
关闭
推荐
/2
中文版ChatGPT
1.无需魔法 2.提高编程效率 3.提高文档能力
查看 »
新手帮助
新手帮助:注册遇到问题,领取资源,加入铁粉群,不会使用搜索,如何获取积分等
查看 »
意见
反馈