Yes, I wasn't really choosing my examples particularly carefully, but I think the conclusion stands: pgpool (or anyone/thing except for the server) cannot in general tell from the SQL it is handed by the client whether an update will occur, nor which tables might be affected.

That's not to say that pgpool couldn't make a good guess in the majority of cases!


Joshua D. Drake wrote:

Matt Clark wrote:

Presumably it can't _ever_ know without being explicitly told, because even for a plain SELECT there might be triggers involved that update tables, or it might be a select of a stored proc, etc. So in the general case, you can't assume that a select doesn't cause an update, and you can't be sure that the table list in an update is a complete list of the tables that might be updated.

Uhmmm no :) There is no such thing as a select trigger. The closest you would get
is a function that is called via select which could be detected by making sure
you are prepending with a BEGIN or START Transaction. Thus yes pgPool can be made
to do this.


Joshua D. Drake

---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to [EMAIL PROTECTED] so that your message can get through to the mailing list cleanly

Reply via email to