Re: sql insert function - Mailing list pgsql-general

From Alex Satrapa
Subject Re: sql insert function
Date
Msg-id 40036BAC.40700@lintelsys.com.au
Whole thread Raw
In response to Re: sql insert function  ("Chris Ochs" <chris@paymentonline.com>)
List pgsql-general
Chris Ochs wrote:
> My program starts a transaction, does about 20 inserts, then commits.  When
> I replace once of the inserts with a function that does the insert, when I
> do the commit I get this message:
>
> WARNING:  there is no transaction in progress
>
> The inserts all commit fine.  Do functions used through DBD::Pg do something
> like turn on autocommit after a function is called?

Is your function calling 'commit' itself?  If so, it could be committing
before your SQL statement issues the 'commit', thus attempting to commit
a transaction which doesn't exist any more.

DBD::Pg defaults to "AutoCommit" behaviour, unless you explicitly turn
it off:

    my $dbh = DBI->connect (
       "DBI:Pg:dbname=database", "user" , "password",
       {AutoCommit => 0}
    );

HTH
Alex Satrapa


pgsql-general by date:

Previous
From: "D. Dante Lorenso"
Date:
Subject: Re: Drawbacks of using BYTEA for PK?
Next
From: Tom Lane
Date:
Subject: Re: Vacuum Error