Re: WIP: Covering + unique indexes.

Anastasia Lubennikova <a.lubennikova@postgrespro.ru>

From: Anastasia Lubennikova <a.lubennikova@postgrespro.ru>
To: pgsql-hackers@postgresql.org
Date: 2016-01-19T17:15:46Z
Lists: pgsql-hackers

12.01.2016 20:47, Jeff Janes:
> It looks like the "covering" patch, with or without the "omit_opclass"
> patch, does not support expressions as included columns:
>
> create table foobar (x text, y xml);
> create index on foobar (x) including  (md5(x));
> ERROR:  unrecognized node type: 904
> create index on foobar (x) including  ((y::text));
> ERROR:  unrecognized node type: 911
>
> I think we would probably want it to work with those (or at least to
> throw a better error message).
Thank you for the notice. I couldn't fix it quickly and added a stub in 
the latest patch.
But I'll try to fix it and add expressions support a bit later.

-- 
Anastasia Lubennikova
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company



Commits

  1. Adjust INCLUDE index truncation comments and code.

  2. Add commentary explaining why MaxIndexTuplesPerPage calculation is safe.

  3. Indexes with INCLUDE columns and their support in B-tree

  4. Add amcheck verification of heap relations belonging to btree indexes.

  5. Doc: move info for btree opclass implementors into main documentation.

  6. Doc: mention that you can't PREPARE TRANSACTION after NOTIFY.

  7. Remove dedicated B-tree root-split record types.

  8. Restructure index access method API to hide most of it at the C level.

  9. Split _bt_insertonpg to two functions.

  10. Major overhaul of btree index code. Eliminate special BTP_CHAIN logic for