Re: DBLink cursors - Mailing list pgsql-hackers

From Shridhar Daithankar
Subject Re: DBLink cursors
Date
Msg-id 3E9EAC65.4075.36E3BE1@localhost
Whole thread Raw
In response to Re: DBLink cursors  (Joe Conway <mail@joeconway.com>)
List pgsql-hackers
On 16 Apr 2003 at 9:12, Joe Conway wrote:

> Shridhar Daithankar wrote:
> > I was just going thr. dblink code and noticed that dblink cursors are wrapped 
> > in their own transaction.
> 
> yup -- been that way since 7.3 was released.
> 
> > If an application instantiates a transaction to  do 10 things, one of which is 
> > to fetch a cursor over dblink, how will it work?
> 
> I guess it won't -- you're the first person who ever complained, so 
> quite possibly you're the first who's needed it.

Well, actually I am not doing anything with it right now. Just happened to 
notice it.
> 
> > IMO the instantiation of transaction block should be left calling application, 
> > as done with normal cursors. DBLink would have to detect whether or not they 
> > are in a transaction block and abort accordingly.
> > 
> > Or I misunderstood something?
> 
> No, you seem to understand correctly. Patches gratefully accepted ;-)

I'll send later. The postgresql CVS tree is on linux partition..
> I think someone is working on nested transactions, which IIRC may make 
> it into 7.4. In this case, the issue will be moot, no? If not, I will 
> take a look at fixing it for 7.4. If you want to ensure that, submit a 
> patch. I'd think the best thing to do would be the following:
> 
> - detect transaction status
> - if not in an explicit transaction block, start one

Any idea how do you detect transaction status? I don't have tried it out but 
any info. to start with would be good.

That is fine. But I would like to put out a huge warning board in dblink 
documentation stating which function triggers a transaction and which function 
commits it.

if a module starts a transaction without knowledge to calling application, that 
is not good. It does not matter whether or not postresql supports nested 
transactions. If it does it will work but that would still be an unforeseen 
situation for the application.

ByeShridhar

--
Brogan's Constant:    People tend to congregate in the back of the church and the    
front of the bus.



pgsql-hackers by date:

Previous
From: "Dave Page"
Date:
Subject: Re: Many comments (related to "Are we losing momentum?")
Next
From: "Shridhar Daithankar"
Date:
Subject: Re: One more question regarding dblink