[英]Wrong working b tree index in postgres
最近,我在表的一列上有b树索引的问题。 我创建索引:
CREATE INDEX t_client_contact_email on t_client_contakt (email);
一切正常,但是几天后,使用该索引进行的搜索无法正常工作。 重建该索引(DROP-CREATE)可以。
我该怎么办? 我正在使用Postgres 8.4。
您可能会被一个最近修复的旧错误所困扰。
看到这个:
http://www.postgresql.org/docs/8.4/static/release-8-4-11.html
特别:
修复插入与清理同时进行的btree索引损坏(Tom Lane)
由插入引起的索引页拆分有时可能会导致同时运行的VACUUM丢失应删除的索引条目。 删除相应的表行后,悬空的索引条目将导致错误(例如“无法读取文件中的块N ...”)或更糟糕的是,在不相关的行重新插入不相关的行后,查询结果会无提示地出现错误表格位置。 此错误从8.2版本开始就存在,但是很少出现,直到现在都没有被诊断出来。 如果您有理由怀疑它已在数据库中发生,则重新索引受影响的索引将可以解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.