Re: WIP: Covering + unique indexes.
Anastasia Lubennikova <a.lubennikova@postgrespro.ru>
Attachments
- including_columns_9.1.patch (text/x-patch) patch
06.04.2016 16:15, Anastasia Lubennikova : > 06.04.2016 03:05, Peter Geoghegan: >> * There is some stray whitespace within RelationGetIndexAttrBitmap(). >> I think you should have updated it with code, though. I don't think >> it's necessary for HOT updates to work, but I think it could be >> necessary so that we don't need to get a row lock that blocks >> non-conflict foreign key locking (see heap_update() callers). I think >> you need to be careful for non-key columns within the loop in >> RelationGetIndexAttrBitmap(), basically, because it seems to still go >> through all columns. UPSERT also must call this code, FWIW. >> >> * I think that a similar omission is also made for the replica >> identity stuff in RelationGetIndexAttrBitmap(). Some thought is needed >> on how this patch interacts with logical decoding, I guess. > > Good point. Indexes are everywhere in the code. > I missed that RelationGetIndexAttrBitmap() is used not only for REINDEX. > I'll discuss it with Theodor and send an updated patch tomorrow. As promised, updated patch is in attachments. But, I'm not an expert in this area, so it needs a 'critical look'. -- Anastasia Lubennikova Postgres Professional: http://www.postgrespro.com The Russian Postgres Company
Commits
-
Adjust INCLUDE index truncation comments and code.
- 075aade4361b 11.0 landed
-
Add commentary explaining why MaxIndexTuplesPerPage calculation is safe.
- 2a67d6440db4 11.0 cited
-
Indexes with INCLUDE columns and their support in B-tree
- 8224de4f42cc 11.0 landed
-
Add amcheck verification of heap relations belonging to btree indexes.
- 7f563c09f890 11.0 cited
-
Doc: move info for btree opclass implementors into main documentation.
- 3785f7eee3d9 11.0 cited
-
Doc: mention that you can't PREPARE TRANSACTION after NOTIFY.
- e4fbf22831c2 11.0 cited
-
Remove dedicated B-tree root-split record types.
- 0c504a80cf2e 11.0 cited
-
Restructure index access method API to hide most of it at the C level.
- 65c5fcd353a8 9.6.0 cited
-
Split _bt_insertonpg to two functions.
- bc292937ae6a 8.3.0 cited
-
Major overhaul of btree index code. Eliminate special BTP_CHAIN logic for
- 9e85183bfc31 7.1.1 cited