Re: [HACKERS] parse_expr.c another type produced by transformations?
Greg Stark [EMAIL PROTECTED] writes: Ran into this in cvs tip checked out as of yesterday: db= SELECT sum(CASE WHEN (upper(substr((select 'en'::varchar),1,1)) not between 'A' and 'Z') THEN 1 ELSE 0 END) AS n FROM tab; ERROR: transformExpr: does not know how to transform node 309 (internal error) 309 is T_FuncExpr. Is this a node type that should be added as described by the comment? Yeah, you're right, and three other node types too. I missed this spot while changing the representation of Expr the other day. Thanks for catching it. regards, tom lane ---(end of broadcast)--- TIP 2: you can get off all lists at once with the unregister command (send unregister YourEmailAddressHere to [EMAIL PROTECTED])
[HACKERS] parse_expr.c another type produced by transformations?
Ran into this in cvs tip checked out as of yesterday: db= SELECT sum(CASE WHEN (upper(substr((select 'en'::varchar),1,1)) not between 'A' and 'Z') THEN 1 ELSE 0 END) AS n FROM tab; ERROR: transformExpr: does not know how to transform node 309 (internal error) 309 is T_FuncExpr. Is this a node type that should be added as described by the comment? Appended is the patch to add it but I don't know if it should be or not. parse_expr.c: /* * Quietly accept node types that may be presented when we are * called on an already-transformed tree. * * Do any other node types need to be accepted? For now we are * taking a conservative approach, and only accepting node * types that are demonstrably necessary to accept. */ --- parse_expr.c.~1.144.~ 2003-02-09 23:44:46.0 -0500 +++ parse_expr.c2003-02-12 13:02:35.0 -0500 @@ -670,6 +670,7 @@ case T_Param: case T_Aggref: case T_ArrayRef: + case T_FuncExpr: case T_FieldSelect: case T_RelabelType: case T_CoerceToDomain: -- greg ---(end of broadcast)--- TIP 2: you can get off all lists at once with the unregister command (send unregister YourEmailAddressHere to [EMAIL PROTECTED])