Re: Command Triggers
Dimitri Fontaine <dimitri@2ndquadrant.fr>
From: Dimitri Fontaine <dimitri@2ndQuadrant.fr>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Dimitri Fontaine <dimitri@2ndQuadrant.fr>, Robert Haas <robertmhaas@gmail.com>, Andres Freund <andres@anarazel.de>, pgsql-hackers@postgresql.org, Greg Smith <greg@2ndquadrant.com>, Bruce Momjian <bruce@momjian.us>, Alvaro Herrera <alvherre@commandprompt.com>
Date: 2012-01-18T09:09:34Z
Lists: pgsql-hackers
Tom Lane <tgl@sss.pgh.pa.us> writes: > Dimitri Fontaine <dimitri@2ndQuadrant.fr> writes: >> I still have some cleaning to do before to prepare the next patch >> version, such as documentation updating and dealing with rewrites of >> CHECK and DEFAULT column constraints in CREATE TABLE. I had to add >> support for the T_A_Const parser node, and now I'm about to see about >> adding support for the T_A_Expr one, but I can't help to wonder how the >> rewriter could work without them. > > It doesn't, and it shouldn't have to. If those nodes get to the > rewriter then somebody forgot to apply parse analysis. What's your test > case? I'm trying to rewrite the command string from the parse tree, and the simple example that I use to raise an ERROR is the following: create table foo (id serial, foo integer default 1, primary key(id)); I don't know if the parsetree handed by ProcessUtility() has gone through parse analysis and I don't know if that's needed to execute the commands, so maybe I have some high level function to call before walking the parse tree in my new rewriting support? Regards, -- Dimitri Fontaine http://2ndQuadrant.fr PostgreSQL : Expertise, Formation et Support