Christopher Kings-Lynne wrote: > > This patch imlements the TODO that calls for the ability to turn off all > > clustering on a table. > > > > Syntax is ALTER TABLE ... SET WITHOUT CLUSTER; > > > > Doc patch plus regression test is included. > > OK, I have a problem here. This is the new grammar that I added: > > /* ALTER TABLE <name> SET WITHOUT CLUSTER */ > | ALTER TABLE relation_expr SET WITHOUT CLUSTER > { > AlterTableStmt *n = makeNode(AlterTableStmt); > n->subtype = 'L'; > n->relation = $3; > n->name = NULL; > $$ = (Node *)n; > } > > Now, I have to change that relation_expr to qualified_name. However, > this causes shift/reduce errors. (Due to ALTER TABLE relation_expr SET > WITHOUT OIDS.) > > Even changing the syntax to "qualified_name DROP CLUSTER" doesn't work > due to the existence of "relation_expr DROP ...".
I have an idea. Change the code to use relation_expr, then throw an error from gram.y if $$->inhOpt != INH_DEFAULT. -- Bruce Momjian | http://candle.pha.pa.us [EMAIL PROTECTED] | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 9: the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match