申威平台 PostgreSQL 使用 LLVM 导致崩溃
继浮点数溢出问题和汇编指令操作数越界问题之后,我又发现申威平台上一个关于 LLVM 的问题,这个直接导致数据库进程崩溃了,本文简要记录一下这个问题(之前反馈的问题到现在还没有得到回复 :( ,估计是太忙了吧),目前这个问题同样反馈给申威相关的人员了,期待能尽快得到解决。
继浮点数溢出问题和汇编指令操作数越界问题之后,我又发现申威平台上一个关于 LLVM 的问题,这个直接导致数据库进程崩溃了,本文简要记录一下这个问题(之前反馈的问题到现在还没有得到回复 :( ,估计是太忙了吧),目前这个问题同样反馈给申威相关的人员了,期待能尽快得到解决。
MERGE INTO
语法很早之前就在 Oracle 数据库中实现了,最近 PostgreSQL 也实现了相应的语法,该语法符合 SQL2016 标准,与 Oracle 的 MERGE INTO
还是有一定区别的。本文简要介绍一下 PostgreSQL 中的 MERGE INTO
语法。
PostgreSQL 主分支中针对 pg_waldump 新增了四类过滤选项,分别为 RelFileNode
、BlockNumber
、ForkNum
和 FPW
。本文将简要介绍一下这四个过滤选项。
最近在邮件列表中看到一个关于聚集列的数据类型修改导致的异常问题 BUG #17409。本文简要记录一下分析过程以及解决方案。目前该问题已经被修复,在 14.1 和 14.2 版本中应该可以重现。
commit 641f3dffcdf1c7378cfb94c98b6642793181d6db
Author: Tom Lane <tgl@sss.pgh.pa.us>
Date: Fri Mar 11 13:47:26 2022 -0500
Restore the previous semantics of get_constraint_index().
Commit 8b069ef5d changed this function to look at pg_constraint.conindid
rather than searching pg_depend. That was a good performance improvement,
but it failed to preserve the exact semantics. The old code would only
return an index that was "owned by" (internally dependent on) the
specified constraint, whereas the new code will also return indexes that
are just referenced by foreign key constraints. This confuses ALTER
TABLE, which was implicitly expecting the previous semantics, into
failing with errors like
ERROR: relation 146621 has multiple clustered indexes
or
ERROR: "pk_attbl" is not an index for table "atref"
We can fix this without reverting the performance improvement by adding
a contype check in get_constraint_index(). Another way could be to
make ALTER TABLE check it, but I'm worried that extension code could
also have subtle dependencies on the old semantics.
Tom Lane and Japin Li, per bug #17409 from Holly Roberts.
Back-patch to v14 where the error crept in.
Discussion: https://postgr.es/m/17409-52871dda8b5741cb@postgresql.org
最近在做申威平台的兼容时发现一个关于编译器优化的 BUG。第一次遇到编译器优化的问题,因此在这里对其进行简要的记录。
PostgreSQL 提供了自定义参数的功能,您可以使用 SET
或 set_config()
函数来定义参数,本文介绍一下在 PG14(14.1 和 14.2)中引入的关于自定义参数标识符的的问题 BUG #17415。