Home > Archive > PostgreSQL JDBC > November 2005 > semicolons separating statements in a rule action body confuses parseQuery()









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author semicolons separating statements in a rule action body confuses parseQuery()
Jolly Chen

2005-11-03, 8:28 pm

using jdbc-8.0-313 against 8.0.4,

the driver gets confused when parsing rule definition statements with
embedded semicolons such as :

"create rule r1 as on insert to foo do (delete from bar; insert into
bar select * from foo; ); "

the following patch shows a possible quick fix for
QueryExecutorImpl.parseQuery() in org/postgresql/core/v3/
QueryExecutorImpl.java

69d68
< int inParen = 0;
77,82d75
< case '(':
< if (!inSingleQuotes && !inDoubleQuotes) inParen++;
< break;
< case ')':
< if (!inSingleQuotes && !inDoubleQuotes) inParen--;
< break;
105c98
< if (!inSingleQuotes && !inDoubleQuotes && inParen
== 0)
---
> if (!inSingleQuotes && !inDoubleQuotes)



---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match

Sponsored Links





Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive | Programming forum archive

Copyright 2008 droptable.com