Re: Could be improved point of UPSERT

Поиск
Список
Период
Сортировка
От Yourfriend
Тема Re: Could be improved point of UPSERT
Дата
Msg-id CABL_R4P7KVjDV8yNwis-OFp5mrE1+j7TU9pXv2-UPmqMtH34oA@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Could be improved point of UPSERT  (Peter Geoghegan <pg@heroku.com>)
Ответы Re: Could be improved point of UPSERT  (Peter Geoghegan <pg@heroku.com>)
Список pgsql-hackers
In my example, I just give each record a different ID to access it efficiently.

In our business cases, some times, we also use some prefix letter like 'SO', "PO' combining with the current year, month and then a sequence  
to make a invoice ID,

for example, SO201507_1001, PO201503_1280, etc.

As these IDs would be the most important attribute to the business, so, we hope there is no gap for the IDs.

Regards,

Daojing Zhou.



On Wed, Jul 15, 2015 at 2:33 AM, Peter Geoghegan <pg@heroku.com> wrote:
On Sun, Jul 12, 2015 at 4:09 AM, Yourfriend <doudou586@gmail.com> wrote:
> Suggestion:  When a conflict was found for UPSERT, don't access the
> sequence, so users can have a reasonable list of ID.

This is not technically feasible. What if the arbiter index is a serial PK?

The same thing can happen when a transaction is aborted. SERIAL is not
guaranteed to be gapless.
--
Peter Geoghegan

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

Предыдущее
От: Simon Riggs
Дата:
Сообщение: Re: Support for N synchronous standby servers - take 2
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: Support for N synchronous standby servers - take 2