Re: ALTER TABLE...SET WITHOUT CLUSTER

From: Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
To: Christopher Kings-Lynne <chriskl(at)familyhealth(dot)com(dot)au>
Cc: Patches <pgsql-patches(at)postgresql(dot)org>
Subject: Re: ALTER TABLE...SET WITHOUT CLUSTER
Date: 2004-03-18 08:19:36
Message-ID: 40595B98.9010401@familyhealth.com.au
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-patches

> 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 ...".

What's the solution? I can't figure it out...

Chris

In response to

Responses

Browse pgsql-patches by date

  From Date Subject
Next Message Fabien COELHO 2004-03-18 09:51:36 syntax error position "CREATE FUNCTION" bug fix
Previous Message Christopher Kings-Lynne 2004-03-18 04:44:51 Re: ALTER TABLE...SET WITHOUT CLUSTER