IvorySQL 4.0 发布:全面支持 PostgreSQL 17
2024 年 12 月 24 日,IvorySQL 4.0 发布了!
这是 2024 年以来发布的最新版本,相较于上个版本,有了较大的变化。
该版本有多项增强:全面支持 PostgreSQL 17,新增和完善多种 Oracle 兼容特性,如不可见列特性和包功能等。
下面将会为大家详细解读。
新功能解读
全面支持 PostgreSQL 17
PostgreSQL 17 在很多方面进行了能力提升:
- VACUUM 启用新的内存管理机制,在提升 VACUUM 性能的同时降低了内存消耗
- 深化了 SQL/JSON 支持,新增了SQL/JSON 构造函数和查询函数,以及
JSON_TABLE功能,支持将JSON 转换为标准 PostgreSQL 表 - 各方面的性能提升,包括引入流式 I/O 接口,提升了顺序扫描的性能,高并发写入性能,以及在 btree 索引中搜索多个值的能力
- 逻辑复制支持复制槽故障转移,在大版本升级时可以保留逻辑复制槽
pg_basebackup支持增量备份- COPY 命令新增
ON_ERROR选项,允许在插入错误时继续执行
IvorySQL 4.0 全面支持 PostgreSQL 17,使用 IvorySQL 4.0 也可体验 PostgreSQL 17 的新功能。
新增和完善多种 Oracle 兼容特性
不可见列特性
在原生 PostgreSQL 17 的基础上,IvorySQL 4.0 新增兼容 Oracle 不可见列特性帮助用户轻松应对去 “O” 业务需求。
新引入的不可见列特性让用户可以更好地控制列的可见性。对表的访问不会显示不可见的列,除非通过列名显式引用不可见列。因此通过使用不可见列对表进行更改,不会影响应用程序。 在应用迁移过程中,使新列不可见意味着它们不会被现有应用程序看到,但仍然可以被新应用程序显式引用,从而使应用程序的在线迁移更加简单。
Package 包功能
Package 包功能是 IvorySQL 4.0 的重磅新特性。
通过包的形式将相关的功能模块化,使得数据库的过程、函数、变量和其他编程元素组织在一起形成自包含单元,便于管理和维护。由于实现细节隐藏在包体中,提高了代码的安全性和可维护性。包体中的代码在第一次调用时被加载到内存中,后续调用可以直接使用,减少了解析和加载时间。
此外,该版本也进行了一些功能增强,比如内置函数 pg_get_functiondef() 现在得到了增强,提供多个 oid 参数可以一次返回这些 oid 对应的函数定义,也可以导出函数名相同但参数不同的多个函数定义。
详细的变化请查看:
- https://github.com/IvorySQL/IvorySQL/releases/tag/IvorySQL_4.0
- https://github.com/IvorySQL/IvorySQL/commits/IVORY_REL_4_STABLE
安装与升级
欢迎您安装试用 IvorySQL 4.0,如果您已经使用 IvorySQL 3.x 版本,可通过工具升级 IvorySQL 3.x 至最新的 IvorySQL 4.0 进行体验。
后续我们将会发布一篇详细的升级指南供大家参考,敬请期待!
问题反馈
社区欢迎大家试用 IvorySQL 4.0,如果在使用的过程中出现问题或发现 bug,欢迎您在 GitHub 提交 issue,链接:https://github.com/IvorySQL/IvorySQL/issues。
致谢
最后,致谢各位贡献者!感谢大家在产品发布的过程中作出贡献,为社区发展添砖加瓦。
以下是该版本的贡献者(排名不分先后):
- Bei Fu
- Cary Huang
- Fawei Zhao
- Grant Zhou
- Hope Gao
- Imran Zaheer
- Jiajie Zhou
- jerome-peng
- Jiao Ren
- Li Wang
- Ruohang Feng
- Shawn Yan
- Shiji Niu
- Shoubo Wang
- Shuntian Jiao
- Xiangyu Liang
- Xinjie Lv
- Yi Wen
- Zhenwei Xu
IvorySQL 4.0 发布:全面支持 PostgreSQL 17的更多相关文章
- Selenium WebDriver 2.34.0 发布,支持Firefox22
Selenium WebDriver 2.34.0 发布,支持Firefox22http://automationqa.com/forum.php?mod=viewthread&tid=270 ...
- AgileConfig轻量级配置中心1.3.0发布,支持多用户权限控制
AgileConfig 当初是设计给我自己用的一个工具,所以只设置了一道管理员密码,没有用户的概念.但是很多同学在使用过后都提出了需要多用户支持的建议.整个团队或者整个公司都使用同一个密码来管理非常的 ...
- AgileConfig-轻量级配置中心 1.1.0 发布,支持应用间配置继承
AgileConfig轻量级配置中心自第一个版本发布不知不觉已经半年了.在并未进行什么推广的情况下收到了250个star,对我有很大的鼓舞,并且也有不少同学试用,并且给出了宝贵的意见,非常感谢他们.其 ...
- Spring Boot 2.5.0 发布:支持Java16、Gradle 7、Datasource初始化机制调整
今年520的事情是真的多,娱乐圈的我们不管,就跟DD一起来看看 Spring Boot 2.5.0 的发布吧!看看都带来了哪些振奋人心的新特性和改动! 主要更新 支持 Java 16 支持 Gradl ...
- 【Andorid】短视频拍摄SDK——Vitamio Recorder 2.0 发布(支持ffmpeg命令行)
简介 VCamera SDK Android 版(短视频拍摄SDK)是炫一下(北京)科技有限公司推出的软件开发工具包,为Android开发者提供简单.快捷的接口,帮助开发者实现Android平台上的短 ...
- Jsonnet-PHP v1.3.0 发布,支持 PHP 7 使用 Jsonnet
JsonNet-PHP 是 Google Jsonnet 对 PHP的支持扩展. pecl: http://pecl.php.net/package/jsonnet github: https://g ...
- Java 开源博客 Solo 1.3.0 发布 - Docker 支持
Solo 1.3.0 正式发布了,感谢一直以来关注 B3log 开源的朋友! 可以通过一个命令启动(不需要安装数据库.部署容器),也可以通过 war 方式部署容器,连接 MySQL.这应该是史上最容易 ...
- Sentinel 1.7.0 发布,支持 Envoy 集群流量控制
流控降级中间件Sentinel 1.7.0版本正式发布,引入了 Envoy 集群流量控制支持.properties 文件配置.Consul/Etcd/Spring Cloud Config 动态数据源 ...
- Nacos 1.1.0发布,支持灰度配置和地址服务器模式
https://nacos.io/zh-cn/blog/nacos%201.1.0.html
- Kube-OVN 0.6.0 发布,支持 IPv6、流量镜像及更多功能
Kube-OVN 是一个基于 OVN 的 Kubernetes 开源网络系统. 本次更新主要包含了以下内容: 1. 支持流量镜像 在安装 Kube-OVN 时可以开启 mirror 选项,会自动在每个 ...
随机推荐
- 开源即时通讯IM框架 MobileIMSDK:快速入门
1.项目简介 MobileIMSDK是一套专为移动端开发的原创IM通信层框架: 1)历经8年.久经考验: 2)超轻量级.高度提炼,lib包50KB以内: 3)精心封装,一套API同时支持UDP.TCP ...
- 【狂神说Java】Java零基础学习笔记-面向对象
[狂神说Java]Java零基础学习笔记-面向对象 面向对象01:什么是面向对象 面向过程&面向对象 面向过程思想 步骤清晰简单,第一步做什么,第二步做什么.... 面对过程适合处理一些较为简 ...
- 展锐SE8451E 开启硬件流控
Dear Customer: 如电话沟通,若将uart0配置成3M波特率,需进行如下更改: 1.时钟源更改为96M/sprdroid10_trunk_19c_rls1/bsp/kernel/ker ...
- nvm的安装与使用,多个node版本同时使用
nvm的介绍 nvm全英文也叫node.js version management,是一个nodejs的版本管理工具.nvm和npm都是node.js版本管理工具,为了解决node.js各种版本存在不 ...
- Flybirds 问题汇总
1. HOOK-ERROR in before_all: AttributeError: 'ScreenRecordInfo' object has no attribute 'dev' 解决方法:
- MySQL架构体系-SQL查询执行全过程解析
前言: 一直是想知道一条SQL语句是怎么被执行的,它执行的顺序是怎样的,然后查看总结各方资料,就有了下面这一篇博文了. 本文将从MySQL总体架构--->查询执行流程--->语句执行顺序来 ...
- 深入浅出:Agent如何调用工具——从OpenAI Function Call到CrewAI框架
深入浅出:Agent如何调用工具--从OpenAI Function Call到CrewAI框架 嗨,大家好!作为一个喜欢折腾AI新技术的算法攻城狮,最近又学习了一些Agent工作流调用工具的文章,学 ...
- 脱离实体类操作数据库(mysql版本)
原理很简单:1.利用mysql的information_schema库,获取对用表的信息: 2.使用DataSource,建立数据库连接,并执行sql脚本: 3.Map的keySet和values集合 ...
- 218:解释LINUX文件系统权限
- Volar Vetur 在 VSCode 里的配置
VSCode 对 vue2 vue3 项目如何配置 1. 在 vscode 安装 vetur.Vue - Official(之前叫 Volar) 两个插件 2.你若是 vue3 项目,直接在你项目工作 ...