- Newest
- Most votes
- Most comments
There are a few potential reasons why rows may not be getting indexed in your PostgreSQL database on RDS:
The indexes are not being created properly. Ensure the indexes exist and have been analyzed after loading data or making changes. You can check if indexes exist using SELECT * FROM pg_indexes and analyze them with ANALYZE .
The autovacuum process is not removing expired index entries. Ensure autovacuum is enabled and running regularly to clean up indexes.
The table statistics are out of date. Running ANALYZE on the tables will update statistics and may cause PostgreSQL to use the indexes more efficiently.
The query plan is not using the indexes. Check the query plan using EXPLAIN and make sure indexes are being used if they could help. Indexes won't be used if the optimizer estimates a sequential scan is more efficient.
The indexes are corrupted or inconsistent. Rebuilding indexes with REINDEX may fix issues preventing them from being used.
Sources
[1] Amazon RDS for PostgreSQL updates - Amazon Relational Database Service - https://docs.aws.amazon.com/AmazonRDS/latest/PostgreSQLReleaseNotes/postgresql-versions.html
[2] Amazon RDS (PostgreSQL) - Amazon Kendra - https://docs.aws.amazon.com/kendra/latest/dg/data-source-rds-postgresql.html
Relevant content
- asked 2 months ago
- asked 3 months ago
- asked 22 days ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated 4 months ago