I am setting up WAL-archiving and streaming replication to a warm standby server with Postgresql 9.1.
The Postgresql documentation states:
Operations on hash indexes are not presently WAL-logged, so replay will not update these indexes. This will mean that any new inserts will be ignored by the index, updated rows will apparently disappear and deleted rows will still retain pointers. In other words, if you modify a table with a hash index on it then you will get incorrect query results on a standby server. When recovery completes it is recommended that you manually REINDEX each such index after completing a recovery operation.
How can I find out if a specific database contains hash indexes?