Bug fixes:
- Fix hypothetical index names when its Oid is more than 1 billion (Julien Rouhaud, thanks to github user sylph520 for the report)
- Fix hypothetical index deparsing when attributes need quoting (Julien Rouhaud, thanks to Daniel Lang for the report)
Miscellaneous:
- Add support for PostgreSQL 17 (Georgy Shelkovy, Julien Rouhaud)
New features:
- Support hypothetically hiding existing indexes, hypothetical or not (github user nutvii and Julien Rouhaud)
Miscellaneous:
- Have hypopg_relation_size() error out rather than returning 0 if called for an oid that isn't a hypothetical index oid
- Slighthly reduce memory usage for hypothetical btree indexes without INCLUDE keys
Miscellaneous:
- Fix compatibility with PostgreSQL 14 beta 2
New features:
- Add support for hypothetical hash indexes (pg10+)
New features:
- Make hypopg work on standby servers using a new "fake" oid generator, that borrows Oids in the FirstBootstrapObjectId / FirstNormalObjectId range rather than real oids. If necessary, the old behavior can still be used with the new hypopg.use_real_oids configuration option.
Bug fixes
- Check if access methods support an INCLUDE clause to avoid creating invalid hypothetical indexes.
- Display hypothetical indexes on dropped table in hypopg_list_indexes.
Miscellaneous
- Change hypopg_list_indexes() to view hypopg_list_indexes.
- Various documentation improvements.
New features:
- Add support for hypothetical index on partitioned tables
Miscellaneous
- Fix compatibility with PostgreSQL 13
Bug fixes
- Check that the target relation is a table or a materialized view
Miscellaneous
- Fix compatibility with PostgreSQL 12
- Don't leak client_encoding change after hypopg extension is created (Michael Kröll)
- Use a dedicated MemoryContext to store hypothetical objects
- Fix compatibility on Windows (Godwottery)
Bug fixes
- Call previous explain_get_index_name_hook if it was setup
- add hypopg_reset_index() SQL function
New features
- Add support for INCLUDE on hypothetical indexes (pg11+)
- Add support for parallel hypothetical index scan (pg11+)
Bug fixes:
- Fix support for pg11, thanks to Christoph Berg for the report
Bug fixes:
- Fix potentially uninitialized variables, thanks to Jeremy Finzel for the
report.
- Support hypothetical indexes on materialized view, thanks to Andrew Kane
for the report.
Miscellaneous:
- add support for PostgreSQL 11
New features:
- add support for hypothetical indexes on expression
- add a hypopg_get_indexdef() function to get definition of a stored
hypothetical index
Bug fixes:
- don't allow hypothetical unique or multi-column index if the AM doesn't
support it
- disallow hypothetical indexes on system columns (except OID)
- fix indexes using DESC clause and default NULLS ordering, thanks to
Andrew Kane for the report and test case.
- fix PostgreSQL 9.6+ support, thanks to Rob Stolarz for the report
Miscellaneous:
- add support for PostgreSQL 10
- fix memory leak in hypopg() function
- add support for PostgreSQL 9.6, thanks to Konstantin Mosolov for fixing some issues
- add support from new bloom access method (9.6+)
- fix issue with hypothetical indexes on expression (thanks to Konstantin Mosolov)
- fix possible crash in hypothetical index size estimation
- remove the simplified "hypopg_add_index()" function
- free memory when hypothetical index creation fails
- check that number of column is suitable for a real index
- for btree indexes, check that the estimated average row size is small enough to allow a real index creation.
- handle BRIN indexes.
- handle index storage parameters for supported index methods.
- handle index on predicate.
- safer handling of locks.
- fix a bug when a regular query could fail after a hypothetical index have been created, and tested with explain.
- hypopg_create_index() and hypopg_add_index() now returns the oid and index names.
- add hypopg.enabled GUC. It allows disabling HypoPG globally or in a single backend. Thanks to Ronan Dunklau for the patch.
- fix crash when building hypothetical index on expression, thanks to Thom Brown for the report.
- First version of HypoPG.