[BUGS] Concurrent ALTER SEQUENCE RESTART Regression - Mailing list pgsql-bugs

From Jason Petersen
Subject [BUGS] Concurrent ALTER SEQUENCE RESTART Regression
Date
Msg-id D992B4C2-8F80-4DE0-8348-6E0696C3F967@citusdata.com
Whole thread Raw
Responses Re: [BUGS] Concurrent ALTER SEQUENCE RESTART Regression
Re: [BUGS] Concurrent ALTER SEQUENCE RESTART Regression
List pgsql-bugs
I recently found a behavior regression for ALTER SEQUENCE.

Repro. Steps
============
 1. Create a new sequence: CREATE SEQUENCE my_seq; 2. Start this loop twice in different shells:      while true; do
psql-1Xtc 'ALTER SEQUENCE my_seq RESTART 1'; done 

Expected (pre-10) Behavior
==========================

Each loop should repeatedly succeed and simply print ALTER SEQUENCE over and over.

Actual (PG 10) Behavior
=======================

The output stream is punctuated by occasional "ERROR:  tuple concurrently updated" messages.

Summary
=======

While I understand the above workload is nonsensical, given the non-transactional behavior of ALTER SEQUENCE
statements,previous PostgreSQL versions did not produce an error. It is likely applications have been coded with that
assumptionand will not deal well with the new behavior. 

Having poked around the code a bit, I see the functions to access for sequence state have changed; I’m assuming this is
anunintended side-effect of that change. 

I haven’t worked up a patch myself, but I have some hope someone more familiar with the underlying changes could make
quickwork of this. 

--
Jason Petersen
Software Engineer | Citus Data
303.736.9255
jason@citusdata.com


pgsql-bugs by date:

Previous
From: Manuel Pradal
Date:
Subject: Re: [BUGS] plpgsql bug: `EXECUTE(sql_command) INTO rec` returnssometimes a NULL-able, sometimes not
Next
From: cinbau@warpmail.net
Date:
Subject: [BUGS] BUG #14631: Allow pg_restore to remap schema