Re: any way for a transaction to "see" inserts done earlier in the transaction?

Поиск
Список
Период
Сортировка
От Rajeev rastogi
Тема Re: any way for a transaction to "see" inserts done earlier in the transaction?
Дата
Msg-id BF2827DCCE55594C8D7A8F7FFD3AB7713DDE29AA@SZXEML508-MBX.china.huawei.com
обсуждение исходный текст
Ответ на Re: any way for a transaction to "see" inserts done earlier in the transaction?  (Susan Cassidy <susan.cassidy@decisionsciencescorp.com>)
Список pgsql-general

Was the function doing INSERT operation was successful? I suspect may be INSERT function has failed and hence INSERT got ABORTED.

Also you can try to commit whole transaction and see if you are able to find the new id (This will prove that whether really new id was inserted or not).

 

Thanks and Regards,

Kumar Rajeev Rastogi

From: pgsql-general-owner@postgresql.org [mailto:pgsql-general-owner@postgresql.org] On Behalf Of Susan Cassidy
Sent: 17 April 2014 05:36
To: Steven Schlansker
Cc: Tom Lane; pgsql-general@postgresql.org
Subject: Re: [GENERAL] any way for a transaction to "see" inserts done earlier in the transaction?

 

It is a fairly large and complex Perl program, so no, not really.

I do an insert via a function, which returns the new id, then later I try to SELECT on that id, and it doesn't find it.

Could it be because the insert is done inside a function?

Susan

 

On Wed, Apr 16, 2014 at 4:58 PM, Steven Schlansker <steven@likeness.com> wrote:



>> On Wed, Apr 16, 2014 at 4:31 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> Susan Cassidy <susan.cassidy@decisionsciencescorp.com> writes:
>> > Is there any way to let a transaction "see" the inserts that were done
>> > earlier in the transaction?
>>
>> It works that way automatically, as long as you're talking about separate
>> statements within one transaction.
>>
>>                         regards, tom lane

> On Apr 16, 2014, at 4:53 PM, Susan Cassidy <susan.cassidy@decisionsciencescorp.com> wrote:
> Well, it isn't working for me right now.  It can't "see" a row that was inserted earlier in the transaction.  It is a new primary key, and when I SELECT it, it isn't found.
>

Can you share the code that does not work with us?  Preferably as a small self-contained example.

 

В списке pgsql-general по дате отправления:

Предыдущее
От: Rajeev rastogi
Дата:
Сообщение: Re: Disable an index temporarily
Следующее
От: Torsten Förtsch
Дата:
Сообщение: pg_stat_replication.state: streaming/catchup