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.