btree_gin and btree_gist for enums

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2016-03-17T10:44:01Z
Lists: pgsql-hackers

Attachments

Here is a patch to add enum support to btree_gin and btree_gist. I 
didn't include distance operations, as I didn't think it terribly 
important, and there isn't a simple way to compute it sanely and 
efficiently, so no KNN support.

cheers

andrew

Commits

  1. Add btree_gin support for enum types

  2. Add btree_gist support for enum types.

  3. Use CallerFInfoFunctionCall with btree_gist for numeric types

  4. Add a direct function call mechanism using the caller's context.

  5. Add support for EUI-64 MAC addresses as macaddr8

  6. Add an Assert that enum_cmp_internal() gets passed an FmgrInfo pointer.