Pulsar 社区周报 | No.2024-06-07 | Apache Pulsar 新分支 3.3 版本发布

各位热爱 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 上半年度)

dfe9880bade6d4c54c95e3de11753e3c.png

Pulsar Weekly Merge Stars

感谢以下的小伙伴,感谢你们本周为 Apache Pulsar 做的精彩贡献(排名不分先后)

1cba60dd25a52f1b745335ac5efdc3ad.png
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/

619acb1f4509999956e6c7da3db1500a.png
Pulsar 中文社区 Logo(部分)

诚挚邀请您加入 Apache Pulsar 社区,与全球开发者一起学习、分享和成长,共同塑造云原生消息流平台的未来,一起打造更加开放和高效的开源技术生态!

c552503dfd85bd54b36e446dd9185212.png
Pulsar 进群说明

推荐阅读

干货文章

e9b5b84740fd60ad07bd12afbf8cda7e.jpeg
技术探究 | Flipkart 带来 Apache Pulsar 集群调优指南

62d50b5ded01faaa2b1961cf0c80bc00.jpeg

Apache Pulsar 为滴滴大数据运维带来了哪些收益?

31399ec0a48bfa4ada089cca4bd0e865.jpeg

技术探究 | 得物技术对 BookKeeper 存储架构做源码级剖析


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/697691.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024屈原故里端午文化节开幕

6月7日,“中国端午诗意宜昌”2024屈原故里端午文化节在宜昌市秭归县屈原广场盛大开幕。相关嘉宾、屈氏后裔、华商侨商及外资企业代表、主流媒体代表和当地民众聚首屈原祠前,缅怀诗祖屈原,共襄端午盛典。 本届屈原故里端午文化节由湖北省人民政…

【SQLAlChemy】filter过滤条件如何使用?

filter 过滤条件 生成 mock 数据 # 创建 session 对象 session sessionmaker(bindengine)()# 本地生成mock数据 for i in range(6):# 生成随机名字, 长度为4到7个字符name .join(random.choice(string.ascii_letters) for _ in range(random.randint(4, 7)))# 生成随机年龄…

Lua搭建网站后台教程

本文讲解如何使用二进制发布包和FastWeb网站管理工具搭建站点 FastWeb网站管理工具 使用该工具可快速在Windows平台部署。支持官方或三方模块的自动安装、日志调试、版本更新等。 1、下载最新版本压缩包 2、解压到任意目录(建议英文) 3、运行 ①点击 [设置]->[安装] 部…

IO进程线程(八)线程(pthread_t)

文章目录 一、线程(LWP)概念二、线程相关函数(一)创建 pthread_create1. 定义2. 使用(不传参)3. 使用(单个参数)4. 使用(多个参数)5. 多线程执行的顺序6. 多线程内存空间 &#xff0…

BUUCTF---web---[GYCTF2020]Blacklist

1、来到题目连接页面 2、测试单引号和双引号,单引号报错,双引号没报错 1 1" 3、使用万能句式 4、使用堆叠注入测试,查看数据库名 1;show databases;# 5、查看表名 1;show tables;# 6、查看FlagHere中字段名 1;show columns from FlagH…

Python | Leetcode Python题解之第143题重排链表

题目: 题解: class Solution:def reorderList(self, head: ListNode) -> None:if not head:returnmid self.middleNode(head)l1 headl2 mid.nextmid.next Nonel2 self.reverseList(l2)self.mergeList(l1, l2)def middleNode(self, head: ListNo…

Webpack 从入门到精通-基础篇

一、webpack 简介 1.1 webpack 是什么 webpack 是一种前端资源构建工具,一个静态模块打包器(module bundler)。 在 webpack 看来, 前端的所有资源文件(js/json/css/img/less/...)都会作为模块处理。 它将根据模块的依赖关系进行静态分析,打包生成对应的…

CA证书及PKI

文章目录 概述非对称加密User Case: 数据加密User Case: 签名验证潜在问题 CACA证书的组成CA签发证书流程CA验证签名流程CA吊销证书流程 PKI信任链证书链 概述 首先我们需要简单对证书有一个基本的概念,以几个问题进入了解 ❓ Question1: 什么是证书? 证…

数据可视化——pyecharts库绘图

目录 官方文档 使用说明: 点击基本图表 可以点击你想要的图表 安装: 一些例图: 柱状图: 效果: 折线图: 效果: 环形图: 效果: 南丁格尔图(玫瑰图&am…

Mysql的InnoDB介绍

目录 show engines查看搜索殷勤,默认InnoDB。 Mysql为什么使用InnoDB作为默认存储引擎 InnoDB主要包括内存结构和磁盘结构 内存结构包含: 磁盘结构中包括: 为什么设计成内存结构和磁盘结构两部分 使用InnoDB存储引擎创建的表,对应的数据文件在哪里…

Android14之向build.prop添加属性(二百一十九)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 优质视频课程:AAOS车载系统+AOSP…

uniapp原生插件开发实战——集成Android端的Twitter登陆

Android集成Twitter登陆的官方教程:https://github.com/twitter-archive/twitter-kit-android/wiki 项目创建 首先可以先看下uniapp原生插件开发教程 uniapp原生插件类型分为两种: Module模式:能力扩展,无嵌入窗体的UI控件,类似于功能插件。Component模式:在窗体中内嵌…

php 混合xml js,html 代码报错 ,结束标签关闭, short_open_tag 的作用,php关闭文件结束判断

结束标签关闭, short_open_tag 的作用,php关闭文件结束判断 有时候我们我们会将php,xml,js,html 混合编写 php文件只要开始标签而不要结尾标签? 混合代码看代码 直接运行 yntax error, unexpected version (T_STRING) in php…

STM32智能家居项目esp8266上云OneNet【附源码+详细教程】

目录 一、硬件选材 二、OneNet使用教程 三、代码修改教程 四、添加数据流方法 五、项目工程(源码元件清单教程) 小白也能做,项目工程在后文可下载。 一、硬件选材 二、OneNet使用教程 拿到代码后肯定是连不上网的,因为源码…

Android.基本用法学习笔记

设置文本的内容 先在strings.xml声明变量 方法1. 方法2. 设置文本的大小 1.单位dp,大家可以去学一下有关的单位换算 2. 设置文本颜色 1. 2. 4.设置文本背景颜色 1. 2. 设置视图的宽高 与上级视图一致,也就是上一级有多宽就有多少 1. 2. 3. 4. 设置视图…

生成式人工智能重置:从初期热潮到战略扩展

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

cs61C | lecture4

cs61C | lecture4 C 语言内存布局 ### Stack 在最顶部,向下增长。包含局部变量和 function frame information。 > Each stack frame is a contiguous block of memory holding the local variables of a single procedure. > A stack frame includes: > …

C语言详解(文件操作)2

Hi~!这里是奋斗的小羊,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 💥💥个人主页:奋斗的小羊 💥💥所属专栏:C语言 🚀本系列文章为个人学习…

浅析嵌入式实时系统中信号量的概念

目录 概述 1. 认识信号量 1.1 定义信号量 1.2 信号量的类型 1.2.1 二值信号量 1.2.2 计数信号量 1.2.3 互斥信号量 1.2.3.1 认识互斥信号量 1.2.3.2 互斥信号量的其他特性 2 典型信号量的使用 2.1 等待和信号同步 2.2 多任务等待和信号同步 2.3 信用跟踪同步 2.…

C++ - Clion安装Qt msvc2017版本教程,基础环境配置clion+ Qt5.12.12 msvc2017 + VS2019

背景:平时代码开发使用clion,但使用项目要制定mscv2017版本Qt。先装过mingw版本Qt无法运行,但msvc版本依赖装有Visual Studio,本地装的又是2019版。就出现了这个大坑,需要配置好clion Qt msvc2017 VS2019。 文章目录 …