mirror of
https://github.com/postgres/postgres.git
synced 2025-12-21 05:21:08 +03:00
Allow HOT updates for some expression indexes
If the value of an index expression is unchanged after UPDATE, allow HOT updates where previously we disallowed them, giving a significant performance boost in those cases. Particularly useful for indexes such as JSON->>field where the JSON value changes but the indexed value does not. Submitted as "surjective indexes" patch, now enabled by use of new "recheck_on_update" parameter. Author: Konstantin Knizhnik Reviewer: Simon Riggs, with much wordsmithing and some cleanup
This commit is contained in:
@@ -53,7 +53,8 @@ extern List *RelationGetIndexPredicate(Relation relation);
|
||||
|
||||
typedef enum IndexAttrBitmapKind
|
||||
{
|
||||
INDEX_ATTR_BITMAP_ALL,
|
||||
INDEX_ATTR_BITMAP_HOT,
|
||||
INDEX_ATTR_BITMAP_PROJ,
|
||||
INDEX_ATTR_BITMAP_KEY,
|
||||
INDEX_ATTR_BITMAP_PRIMARY_KEY,
|
||||
INDEX_ATTR_BITMAP_IDENTITY_KEY
|
||||
|
||||
Reference in New Issue
Block a user