Re: Thread safe connection-name mapping in ECPG. Is it

From: Lee Kindness <lkindness(at)csl(dot)co(dot)uk>
To: shridhar(at)frodo(dot)hserus(dot)net
Cc: Michael Meskes <meskes(at)postgresql(dot)org>, Zeugswetter Andreas SB SD <ZeugswetterA(at)spardat(dot)at>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Lee Kindness <lkindness(at)csl(dot)co(dot)uk>
Subject: Re: Thread safe connection-name mapping in ECPG. Is it
Date: 2004-02-27 16:54:39
Message-ID: 16447.30287.543731.479608@kelvin.csl.co.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Sort of related, I was thinking about adding some more thread-related
code such that if a connection wasn't explicitely specified then the
last connection SET or CONNECTed to for the current thread is used,
rather than just the "last connection".

But yeah, specifying the connection by variable (be it string or
connection ptr) would be a definite step forward. Currently you cannot
write a generic function like:

int getit(char *using_connection)
{
EXEC SQL BEGIN DECLARE SECTION;
char *s_connection = using_connection;
int s_it;
EXEC SQL END DECLARE SECTION;

EXEC SQL AT :s_connection SELECT it INTO :s_it FROM some_table;
return( s_it );
}

which could be run concurrently by multiple threads.

L.

Shridhar Daithankar writes:
> On Friday 27 February 2004 20:54, Michael Meskes wrote:
> > On Fri, Feb 27, 2004 at 04:22:33PM +0530, Shridhar Daithankar wrote:
> > > How about, allowing 'connection *'? If somebody puts a 'connection *'
> > > there it is used. If it is a string a name search is performed. Best of
> > > both worlds.
> >
> > How shall anyone put a pointer to a connection struct inside the SQL
> > statement?
> >
> > It would help me a lot if you'd be able to give some examples.
>
> EXEC SQL BEGIN DECLARE SECTION;
> connect *connectionPtr;
> EXEC SQL END DECLARE SECTION;
>
> EXEC SQL CONNECT TO db AS connectionPtr;
> EXEC SQL AT connectionPtr SELECT 1;
>
> After all, it is matter of parsing some code and emitting equivalent C code,
> isn't it?
>
> Shridhar

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2004-02-27 17:42:15 Re: Tablespaces
Previous Message Tom Lane 2004-02-27 16:42:46 Re: Tablespaces