Re: [HACKERS] WIP: Covering + unique indexes.
Anastasia Lubennikova <a.lubennikova@postgrespro.ru>
Attachments
- 0001-covering-core_v4.patch (text/x-patch) patch v4-0001
- 0002-covering-btree_v4.patch (text/x-patch) patch v4-0002
- 0003-covering-amcheck_v4.patch (text/x-patch) patch v4-0003
17.01.2018 11:45, Andrey Borodin: > Hi! >> 16 янв. 2018 г., в 21:50, Anastasia Lubennikova <a.lubennikova@postgrespro.ru> написал(а): >> >> Updated patches are attached. >> > Cool, thanks! > > I've looked into the code, but haven't found anything broken. > Since I've tried to rebase patch myself and failed on parse utils, I've spend some cycles trying to break parsing. > One minor complain (no need to fix). > This is fine > x4mmm=# create index on pgbench_accounts (bid) include (aid,filler,upper(filler)); > ERROR: expressions are not supported in included columns > But why not same error here? Previous message is very descriptive. > x4mmm=# create index on pgbench_accounts (bid) include (aid,filler,aid+1); > ERROR: syntax error at or near "+" > This works. But should not, IMHO > x4mmm=# create index on pgbench_accounts (bid) include (aid,aid,aid); > CREATE INDEX > Do not know what's that... > # create index on pgbench_accounts (bid) include (aid desc, aid asc); > CREATE INDEX > > All these things allow foot-shooting with a small caliber, but do not break big things. > > Unfortunately, amcheck_next does not work currently on HEAD (there are problems with AllocSetContextCreate() signature), but I've tested bt_index_check() before, during and after pgbench, on primary and on slave. Also, I've checked bt_index_parent_check() on master. What is amcheck_next ? > During bt_index_check() test from time to time I was observing > ERROR: canceling statement due to conflict with recovery > DETAIL: User query might have needed to see row versions that must be removed. > Sorry, I forgot to attach the amcheck fix to the previous message. Now all the patches are in attachment. Could you recheck if the error is still there? -- 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