Re: temp sequence - Mailing list pgsql-general

From Adrian Klaver
Subject Re: temp sequence
Date
Msg-id 200802030734.38305.aklaver@comcast.net
Whole thread Raw
In response to temp sequence  (Sim Zacks <sim@compulab.co.il>)
List pgsql-general
On Saturday 02 February 2008 10:39 pm, Sim Zacks wrote:
> "PostgreSQL 8.2.4 on i386-pc-linux-gnu, compiled by GCC
> i386-pc-linux-gnu-gcc (GCC) 4.1.1 (Gentoo 4.1.1)"
>
> I am creating a temporary sequence in a function and it seems like it is
> not going away after the function finishes.
> The front end is in MS Access 2000 and I have a single connection. When I
> call the function once it works, when I call it a second time, it gives me
> an error that the sequence already exists. When I restart the application,
> I can call the function again.
>
> I solved the problem by using: alter sequence seq_linenum restart with 1;
>
> The manual states:
> If specified, the sequence object is created only for this session, and is
> automatically dropped on session exit. Existing permanent sequences with
> the same name are not visible (in this session) while the temporary
> sequence exists, unless they are referenced with schema-qualified names.
>
> I thought that a function would be considered its own session, is that
> incorrect?

The connection is the session. The function is the transaction. If  you are
going to maintain the connection you will need to drop the sequence inside
the function after using it.

>
> Thank you
> Sim
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
>        subscribe-nomail command to majordomo@postgresql.org so that your
>        message can get through to the mailing list cleanly

--
Adrian Klaver
aklaver@comcast.net

pgsql-general by date:

Previous
From: "Guido Barosio"
Date:
Subject: Re: [pgsql-advocacy] PostgreSQL Certification
Next
From: Enrico Sirola
Date:
Subject: Re: arrays of floating point numbers / linear algebra operations into the DB