Re: WIP: Covering + unique indexes.
Anastasia Lubennikova <a.lubennikova@postgrespro.ru>
13.01.2016 04:27, David Rowley: > I've also done some testing: > > create table ab (a int, b int); > insert into ab select a,b from generate_Series(1,10) a(a), > generate_series(1,10000) b(b); > set enable_bitmapscan=off; > set enable_indexscan=off; > > select * from ab where a = 1 and b=1; > a | b > ---+--- > 1 | 1 > (1 row) > > set enable_indexscan = on; > select * from ab where a = 1 and b=1; > a | b > ---+--- > (0 rows) > > This is broken. I've not looked into why yet, but from looking at the > EXPLAIN output I was a bit surprised to see b=1 as an index condition. > I'd have expected a Filter maybe, but I've not looked at the EXPLAIN > code to see how those are determined yet. Hmm... Do you use both patches? And could you provide index definition, I can't reproduce the problem assuming that index is created by the statement CREATE INDEX idx ON ab (a) INCLUDING (b); -- 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