Changelog
- added new Invalid Indexes metric and trigger to the Databases discovery rule;
- added version number output to log (#175);
- fixed template syntax (#173, #177);
- fixed Archive plugin to fit PostgreSQL 10 or lower;
- fixed Cache Hit Ratio and Sync Duty Zabbix item formula syntax;
Invalid Indexes
Following the PostgreSQL documentation:
If a problem arises while scanning the table, such as a deadlock or a uniqueness violation in a unique index, the CREATE INDEX command will fail but leave behind an “invalid” index. This index will be ignored for querying purposes because it might be incomplete; however it will still consume update overhead.
-- source
Mamonsu now can track invalid indexes using pg_locks
view to ignore indexes are currently being created and alert us about this if there is at least one invalid index in the database:
SELECT count (*)
FROM pg_catalog.pg_index i LEFT JOIN pg_catalog.pg_locks l
ON (i.indexrelid = l.relation)
WHERE NOT (i.indisvalid AND i.indisready) AND l.relation IS NULL;