23 分•作者: JoachimSchipper•2 个月前
返回首页
最新
17 分•作者: ColinWright•2 个月前
31 分•作者: klelatti•2 个月前
1 分•作者: signa11•2 个月前
1 分•作者: samuell•2 个月前
1 分•作者: biscuits1•2 个月前
1 分•作者: cebert•2 个月前
1 分•作者: bilsbie•2 个月前
1 分•作者: umid_davlatov•2 个月前
1 分•作者: birdculture•2 个月前
1 分•作者: marklit•2 个月前
2 分•作者: ghidravevo•2 个月前
3 分•作者: doener•2 个月前
1 分•作者: tosh•2 个月前
1 分•作者: hbi99•2 个月前
1 分•作者: pramodbiligiri•2 个月前
3 分•作者: tosh•2 个月前
2 分•作者: icy•2 个月前
1 分•作者: robshep•2 个月前
最近,我在PostgreSQL上遇到了一次独特的索引失效问题。需要说明的是,这并非Postgres的错,而是我的问题。<p>幸运的是,这个问题出现在了Staging环境而非Live环境,但以下内容可能会引起其他PostgreSQL用户的兴趣。<p>在写入一组数据和依赖ON CONFLICT来更新/插入行的下一组数据之间(因此完全依赖于维护完整性的唯一索引),我切换了Docker镜像,以便内置一些工具。<p>最初的镜像是基于alpine/musl的。 后来的是基于Debian/Glib的。<p>据我所知,字节排序规则有所不同,索引操作未能找到它应该找到的一组字节。<p>如果我进行了转储/恢复操作,就不会出现问题,但我只是在现有的存储卷上切换了镜像。 哎呀。<p>从表面上看,索引是活动的,并且处于强制执行状态。<p>然而,REINDEX操作失败了,因为存在重复项!<p>对我来说,我修复了重复项,进行了REINDEX操作,然后进行了转储-恢复操作。<p>但考虑到有多少备份机制依赖于存储卷快照,并且在恢复后进行全局重新索引可以捕获此类问题,如果这对任何人来说是一个潜在的问题,那么这一点值得注意。<p>我在此欢迎即将到来的批评浪潮,但我会忽略它,
纯粹是为了发布这篇文章,供其他人参考,以及那些可能犯了和我一样错误的人。
8 分•作者: Mapika•2 个月前