Re: WIP: generalized index constraints
| От | Jeff Davis |
|---|---|
| Тема | Re: WIP: generalized index constraints |
| Дата | |
| Msg-id | 1247584431.8560.89.camel@jdavis обсуждение исходный текст |
| Ответ на | WIP: generalized index constraints (Jeff Davis <pgsql@j-davis.com>) |
| Ответы |
Re: WIP: generalized index constraints
|
| Список | pgsql-hackers |
Updated patch attached.
Changes:
* Added syntax support:
CREATE INDEX foo_idx ON foo ... (a CONSTRAINT =, b CONSTRAINT &&);
* More aggressively clear the shared memory entries to avoid
unnecessary checks
* Code cleanup
TODO:
* When adding constraint to table with data already in it, verify that
existing data satisfies constraint.
* Clean up error messages a little
* Docs
The following are possible TODO items, but I'd like to get some feedback
first:
* It seems like an alternative language would be better:
ALTER TABLE foo ADD INDEX CONSTRAINT optional_name (a =, b &&)
USING foo_idx;
This language would be more like a table constraint that happens to
use an index. I think it's better because it allows multiple
constraints to be enforced by the same index.
* Right now it only supports index AMs that offer amgettuple, which
excludes GIN. Consider adding a crude implementation of gingettuple
that just calls gingetbitmap internally (obviously providing no
performance advantage over gingetbitmap).
Regards,
Jeff Davis
Вложения
В списке pgsql-hackers по дате отправления: