Skip site navigation (1) Skip section navigation (2)

Re: calling function

From: James Robinson <jlrobins(at)socialserve(dot)com>
To: pgsql-jdbc(at)postgresql(dot)org
Cc: <bbhangale(at)Lastminute(dot)com>
Subject: Re: calling function
Date: 2004-03-03 14:55:08
Message-ID: C35AA7B8-6D22-11D8-971F-000A9566A412@socialserve.com (view raw or flat)
Thread:
Lists: pgsql-jdbc
Standard queries in plpgsql are parsed / planned only once per backend 
session, and the plan stores the object ids of the relations used in 
the query, not the names. So, when you drop the table, the cached plan 
becomes invalid. If your client disconnects / reconnects, then calls 
the function, it will be parsed / planned again, and all is well -- 
that one time.

If you want to execute queries without having plans cached, you need to 
make use of the execute command, the technique specified in section 
37.6.4 of the postgres manual:

	http://www.postgresql.org/docs/7.4/static/plpgsql-statements.html

But, as Tom said, you can probably rephrase the function to not use a 
temp table anymore.

----
James Robinson
Socialserve.com


pgsql-jdbc by date

Next:From: Bhushan BhangaleDate: 2004-03-03 15:15:21
Subject: Re: calling function
Previous:From: Sean ElliottDate: 2004-03-03 10:33:27
Subject: Passing date and smallint (etc) parameters to functions from Java

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group