Re: function side effects - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: function side effects
Date
Msg-id 20100223144448.GB3672@alvh.no-ip.org
Whole thread Raw
In response to function side effects  (Tatsuo Ishii <ishii@postgresql.org>)
Responses Re: function side effects
List pgsql-hackers
Tatsuo Ishii wrote:
> Hi,
> 
> I'm wondering if we could detect a funcion has a side effect,
> i.e. does a write to database. This is neccessary for pgpool to decide
> if a qeury should to be sent to all of databases or not. If a query
> includes functions which do writes to database, it should send the
> query to all of databases, otherwise the contents of databases go into
> inconsistent state.

I was talking about this to someone in Cuba and one conclusion we
reached was that this was a fairly difficult task -- consider that
someone may choose to define an innocent-looking operator using a
volatile function.  If you only examine things that look like functions
in the query you will miss those.  The only way to figure out whether a
query has a write effect is to ask the server about the whole query.

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Issues for named/mixed function notation patch
Next
From: Greg Stark
Date:
Subject: Assertion failure in walreceiver