From: | Shalini <shalini(at)saralweb(dot)com> |
---|---|
To: | Rene Romero Benavides <rene(dot)romero(dot)b(at)gmail(dot)com> |
Cc: | Postgres General <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Tuple concurrency issue in large objects |
Date: | 2019-12-11 05:12:51 |
Message-ID: | d1a4d2e2-3f15-74e1-3075-6fff29010e82@saralweb.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Hi Rene,
I am using Postgresql 11.2. Major version is 11 and minor version is 2.
On 12/10/2019 11:24 AM, Rene Romero Benavides wrote:
> Hi Shalini. The usual diagnostic info is your postgresql server
> version, major and minor version, such as in 12.1 , the major version
> is 12 and the minor version (patch version) is 1.
>
>
> On Fri, Dec 6, 2019 at 9:26 AM Shalini <shalini(at)saralweb(dot)com
> <mailto:shalini(at)saralweb(dot)com>> wrote:
>
> Hi all,
>
> I am working on a project which allows multiple users to work on
> single
> large text document. I am using lo_put to apply only the diff into
> the
> large object without replacing it with a new lob. While working on
> it, I
> encountered an error "Tuple concurrently updated".
> The error can be reproduced with two psql clients.
>
> Setup:
>
> mydb=# create table text_docs(id serial primary key, data oid);
> CREATE TABLE
> mydb=# insert into text_docs(data) select lo_import('./upload.txt');
> INSERT 0 1
> mydb=# select * from text_docs;
> id | data
> ----+---------
> 1 | 5810130
> (1 rows)
>
> Now, if we open two psql clients and execute the following commands:
>
> Client 1:
>
> mydb=# begin;
> BEGIN
> mydb=# select lo_put(5810130, 10, '\xaa');
> UPDATE 1
>
> Client 2:
>
> mydb=# select lo_put(5810130, 10, '\xaa');
>
> Client 1:
> mydb=# commit;
> COMMIT
>
> Client 2:
> mydb=# select lo_put(5810130, 10, '\xaa');
> ERROR: tuple concurrently updated
>
> Is there a workaround to this concurrency issue without creating a
> new
> large object?
>
> Regards
> Shalini
>
>
>
>
>
>
> --
> El genio es 1% inspiración y 99% transpiración.
> Thomas Alva Edison
> http://pglearn.blogspot.mx/
>
From | Date | Subject | |
---|---|---|---|
Next Message | Zwettler Markus (OIZ) | 2019-12-11 09:14:47 | AW: PostgreSQL HA FO question |
Previous Message | Thomas Munro | 2019-12-11 04:35:55 | Re: tcp keep alive don't work when the backend is busy |