Hydra 列存崩溃问题

最近,同事在测试 Hydra 的列存时遇到了崩溃的问题。当 chunk_group_row_limit
的值超过 100000
时,就会导致进程崩溃,其本质是由于 stripeReadState->chunkGroupReadState
被释放后,出现了空指针和悬空指针 (Dangling Pointer),从而引发了进程崩溃。
最近,同事在测试 Hydra 的列存时遇到了崩溃的问题。当 chunk_group_row_limit
的值超过 100000
时,就会导致进程崩溃,其本质是由于 stripeReadState->chunkGroupReadState
被释放后,出现了空指针和悬空指针 (Dangling Pointer),从而引发了进程崩溃。
最近被朋友问到 pg_parse_query()
函数在什么情况下会返回多个 RawStmt
,因为在大多数情况下,该函数仅会返回一个 RawStmt
。这个问题与之前另一个朋友咨询的 pg_rewrite_query()
有点类似,但当时自己并没有整理记录,因此借着这个机会对这两个问题稍微整理一下。
最近遇到一个比较有意思的问题,我在运行 PostgreSQL 的回归测试时发现 collate.icu.utf8
这个测试用例在 REL_14_STABLE
分支始终无法跑过,但是在 REL_15_STABLE
却可以正常运行。同时由于 collate.icu.utf8
失败还将导致 foreign_data
测试用例也失败了。
本文简要记录一下 PostgreSQL 中关于表空间的备份,主要涉及到了 pg_basebackup
和 pg_probackup
两种备份方式。
在上一篇文章中,我们聊到了 PostgreSQL 的认证机制,其中提到了 SCRAM-SHA-256 认证,在我写那篇文章的前两天,PostgreSQL 支持了 SCRAM 迭代次数的修改,它引入了一个 scram_iterations
参数来定义 SCRAM 的迭代次数。