Hi again Julien,
I am very grateful for your explain and solution. I understand the issue.
Thank you so much again.
Julien Rouhaud <rjuju123@xxxxxxxxx>, 22 Eyl 2021 Çar, 15:16 tarihinde şunu yazdı:
On Wed, Sep 22, 2021 at 8:06 PM liam saffioti <liam.saffiotti@xxxxxxxxx> wrote:
>
> Yes, the operating system was upgraded from RHEL 7.9 to 8.4.
After a quick check it seems that RHEL 7.X comes with glibc 2.17 and
RHEL 8?X comes with glibc 2.28. So unfortunately all your indexes
using collatable datatypes are corrupted. See
https://postgresql.verite.pro/blog/2018/08/27/glibc-upgrade.html for
more details.
> Does this mean that I will do reindex operation on all indexes in the system?
Only indexes using collatable datatypes.
> Or how can I detect corrupted indexes due to upgrade?
That's not easy, as you have to check all directly used columns, but
also _expression_ and predicates. You could use amcheck to detect
corrupted indexes, but it will be quite costly.
If you're not sure of how to do that, a database-wide REINDEX on each
database is safer.
> Also shouldn't it be seen in the log in case of corruption, like this "ERROR: could not read block xxx in file".
Unfortunately no, because it's a "logical corruption", due to an
underlying ordering change.