Re: strange locks on PG 11 with Golang programs

From: Julien Rouhaud <rjuju123(at)gmail(dot)com>
To: Josef Machytka <josef(dot)machytka(at)gmail(dot)com>
Cc: Postgres General <pgsql-general(at)postgresql(dot)org>
Subject: Re: strange locks on PG 11 with Golang programs
Date: 2020-03-09 09:36:55
Message-ID: 20200309093655.GA39356@nol
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Mon, Mar 09, 2020 at 10:21:23AM +0100, Josef Machytka wrote:
> On Mon, 9 Mar 2020 at 09:58, Julien Rouhaud <rjuju123(at)gmail(dot)com> wrote:
>
> > The query displayed is just the query currently executing, but if the
> > connection is in a transaction the problematic lock could have been
> > acquired by
> > any previously executed query. Did you check in pg_stat_activity if the
> > connection is in a transaction (e.g. query_start != xact_start)?
>
> Oh, I see. Thank you. I modified query from wiki and it shows that blocking
> session actually runs for ~12 hours already. Only last COPY command started
> recently. So maybe golang library did not close session properly and reused
> it in another completely different task? Although I defer db.Close()
> everywhere...

I don't know anything about golang libraries, but this sounds like a problem of
a simulated non-autocommit mode in the driver/lib. You should look at
transaction handling with the lib you're using.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Durumdara 2020-03-09 12:52:51 Who mades the inserts?
Previous Message Josef Machytka 2020-03-09 09:21:23 Re: strange locks on PG 11 with Golang programs