Re: Support for grabbing multiple consecutive values with nextval() - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: Support for grabbing multiple consecutive values with nextval()
Date
Msg-id 4decb205-23d9-0430-84a1-4f03eca9f76b@enterprisedb.com
Whole thread Raw
In response to Re: Support for grabbing multiple consecutive values with nextval()  (Jille Timmermans <jille@quis.cx>)
Responses Re: Support for grabbing multiple consecutive values with nextval()
List pgsql-hackers
On 02.03.22 20:12, Jille Timmermans wrote:
> On 2022-02-28 11:13, Peter Eisentraut wrote:
>> On 27.02.22 10:42, Jille Timmermans wrote:
>>> I wanted to be able to allocate a bunch of numbers from a sequence at 
>>> once. Multiple people seem to be struggling with this 
>>> (https://stackoverflow.com/questions/896274/select-multiple-ids-from-a-postgresql-sequence, 
>>> https://www.depesz.com/2008/03/20/getting-multiple-values-from-sequences/). 
>>>
>>>
>>> I propose to add an extra argument to nextval() that specifies how 
>>> many numbers you want to allocate (default 1).
>>
>> What is the use of this?
>>
>> I note that the stackoverflow question wanted to return multiple
>> sequence values as a result set, whereas your implementation just
>> skips a number of values and returns the last one.  At least we should
>> be clear about what we are trying to achieve.
> Both would work for me actually. I'm using COPY FROM to insert many rows 
> and need to know their ids and COPY FROM doesn't support RETURNING.

I don't understand this use case.  COPY FROM copies from a file.  So you 
want to preallocate the sequence numbers before you copy the new data 
in?  How do you know how many rows are in the file?



pgsql-hackers by date:

Previous
From: Daniil Zakhlystov
Date:
Subject: Re: libpq compression (part 2)
Next
From: Yugo NAGATA
Date:
Subject: Re: Commitfest 2022-03 Patch Triage Part 1a.i