2026-07-13
来源: postgr.es
23
数据库回归测试常常只回答一个问题:SQL 返回的行是否正确。但生产事故还有另一种典型形态:结果完全正确,执行方式却从索引扫描悄悄变成全表扫描。测试全部通过,接口则随着数据增长逐渐超时。 RegreSQL 2.0 将测试边界从“返回了什么”扩展到“怎样返回”:除了比较结果集,还检查执行计划、实际读取的缓冲区、磁盘溢出、节点实际行数和基数估计误差,并允许使...
2026-07-12
来源: postgr.es
45
查询计划里出现一个耗时很长的 节点时,把 设置为 看起来像是最直接的处理方式。但这个参数控制的是规划器对显式排序计划的偏好,并不能消除查询本身对有序结果的需求。排序慢通常应该从内存、索引和返回数据量入手,而不是把 当成性能开关。 是 PostgreSQL 的规划器配置参数(GUC)。关闭它会让规划器尽量避免选择显式排序步骤,但 PostgreSQL 无...
2026-07-12
来源: postgr.es
27
技术会议的基本形态多年未变:讲者上台演讲,现场听众提问,幻灯片稍后上传,剪辑后的视频可能再等几周。这个流程适合线下交流,却没有充分利用直播、自动转写、机器翻译、全文检索和 AI 摘要已经具备的能力。 对于 PostgreSQL 这样的国际开源社区,问题尤其明显。旅行成本、签证、时区和语言会挡住大量开发者,而一次有价值的讨论往往在会议散场时也随之消失。更...
2026-07-11
来源: postgr.es
33
PostgreSQL Buildfarm Client 21 的变化不只是一批兼容性修复。它新增补丁栈与 ABI 检查模块,改进非标准分支和 Meson 构建识别,同时强化跨版本升级测试、超时诊断与失败日志归档。对于维护私有 Buildfarm、扩展分支或长期补丁队列的团队,这一版解决了不少日常自动化中的实际痛点。 新的 PatchStack 模块面向...
2026-07-11
来源: postgr.es
42
是一个名字很容易引起误解的 PostgreSQL 查询规划参数。把它设为 ,并不等于关闭顺序扫描;它表达的是“尽量不要选择顺序扫描”。当读取整张表是回答查询的唯一合理方式时,规划器仍然会生成 。 理解这一点很重要,因为这个参数适合诊断执行计划,却不适合被当作禁止某类算子的开关。 PostgreSQL 的规划器会比较多条候选执行路径的估算成本,例如: 顺...
2026-07-11
来源: postgr.es
27
生产环境里经常会出现一种“跨过围栏扔过来”的 SQL:多层 CTE、相关子查询、窗口函数和含义模糊的别名挤在一起,原作者已经联系不上,但你仍然要判断它做什么、是否正确,以及为什么这么慢。DBeaver Community Edition 26.1.2 将 AI Assistant 加入免费开源版本,为这类查询提供了一个实用的阅读入口。 AI 可以快速解...
2026-07-10
来源: oschina.net
26
zorm v1.8.5 的发布重点是性能优化。这个 Go 轻量 ORM 继续采用原生 SQL 路线,强调较低的学习成本,同时覆盖 MySQL、PostgreSQL、Oracle、SQL Server、SQLite、DB2、ClickHouse、TDengine,以及达梦、金仓、神通、南通 GBase 等数据库。对已经在生产环境使用 zorm 的团队来说...
2026-07-10
来源: postgr.es
42
应用程序很少独自决定最终执行的 SQL。ORM 会拼接关联,视图会隐藏更多查询层,业务代码还可能在外面继续包装。多层组合之后,同一张表可能通过主键与自己连接,而这个 JOIN 既没有增加行,也没有提供新的信息。PostgreSQL 18 引入的 ,正是用来帮助优化器识别并移除这类冗余自连接。 下面的查询看起来有两个数据来源,实际上 使用了主键等值连接。...
2026-07-10
来源: postgr.es
37
一套标称为 PostgreSQL 14 的数据库抛出了一个 PostgreSQL 14 理论上不会产生的错误。这个故事的价值不在于“版本号看错了”这么简单,而在于提醒我们:生产环境里的数据库身份,不能只靠一个版本字符串判断。 当错误信息、客户端库、代理层、托管服务补丁、容器镜像和扩展混在一起时,“PostgreSQL 14”可能只是地图上的标签,不一定...
2026-07-10
来源: postgr.es
24
企业 AI 治理最容易出问题的地方,往往不是模型团队写错了提示词,也不是合规团队没有流程,而是数据层和模型层之间的假设没人验证。数据工程、AI、平台、合规四个团队都在认真做事,但客户数据可能已经被复制到三套环境里:字段定义略有不同,访问控制略有不同,刷新频率也不同。模型层说“只给授权用户看”,数据层反问:“哪一份数据?按哪套权限?什么时候刷新?” 这正...