我正在运行一个使用sameersbn/postgresql:9.5-4作为其数据库的私有gitlab社区版服务器。
数据库中有一个奇怪的现象:
当我运行以下查询时,我可以从返回的数据中找到id
为144
的行。
SELECT * FROM projects WHERE id > 143 ORDER BY id;
SELECT * FROM projects WHERE id < 145 ORDER BY id DESC;
但我找不到使用以下查询id
为144
的行。
SELECT * FROM projects WHERE id = 144;
SELECT * FROM projects WHERE id > 143 ORDER BY id LIMIT 1;
SELECT * FROM projects WHERE id < 145 ORDER BY id DESC LIMIT 1;
SELECT id FROM projects ORDER by id;
这太奇怪了。这让我能够在gitlab中看到这个项目。但是,当我点击该项目时,我看到404 The page could not be found or you don't have permission to view it.
错误。
谁知道什么可能导致这个问题?
我的postgresql的版本是PostgreSQL 9.5.5 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2, 64-bit
。
感谢a_horse_with_no_name的评论。我用REINDEX TABLE projects;
来解决我的问题。