pgsql: Simplify index_[constraint_]create API

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

pgsql: Simplify index_[constraint_]create API

Álvaro Herrera
Simplify index_[constraint_]create API

Instead of passing large swaths of boolean arguments, define some flags
that can be used in a bitmask.  This makes it easier not only to figure
out what each call site is doing, but also to add some new flags.

The flags are split in two -- one set for index_create directly and
another for constraints.  index_create() itself receives both, and then
passes down the latter to index_constraint_create(), which can also be
called standalone.

Discussion: https://postgr.es/m/20171023151251.j75uoe27gajdjmlm@...
Reviewed-by: Simon Riggs

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/a61f5ab986386628cf20b33971364475ce452412

Modified Files
--------------
src/backend/catalog/index.c      | 105 ++++++++++++++++++++-------------------
src/backend/catalog/toasting.c   |   3 +-
src/backend/commands/indexcmds.c |  33 +++++++++---
src/backend/commands/tablecmds.c |  13 +++--
src/include/catalog/index.h      |  29 ++++++-----
5 files changed, 104 insertions(+), 79 deletions(-)

Previous Thread Next Thread