Re: Is there a way to run heap_insert() AFTER ExecInsertIndexTuples() ?

Поиск
Список
Период
Сортировка
От Zoltan Boszormenyi
Тема Re: Is there a way to run heap_insert() AFTER ExecInsertIndexTuples() ?
Дата
Msg-id 45E6DA26.6030309@dunaweb.hu
обсуждение исходный текст
Ответ на Re: Is there a way to run heap_insert() AFTER ExecInsertIndexTuples() ?  (Zoltan Boszormenyi <zboszor@dunaweb.hu>)
Ответы Re: Is there a way to run heap_insert() AFTER ExecInsertIndexTuples() ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Zoltan Boszormenyi írta:
>> The cost I am thinking now is an extra heap_update()
>> after heap_insert() without generating the identity value
>> and inserting index tuples to indexes that doesn't
>> contain the identity column.
>
> And as far as I tested the current state, there is no cost
> if you don't use GENERATED or IDENTITY.
> The extra heap_update() would be performed only
> if you have an IDENTITY colum.

The modification I imagined is actually working:
- skip indexes using the identity columns
- do a simple_heap_update() after all other columns are assigned and index tuples are inserted
- do ExecInsertIndexTuples() on indexes referencing the IDENTITY column

However, I get warning messages like:

WARNING:  detected write past chunk end in ExecutorState 0xaaff68

How can I prevent them?

Best regards,
Zoltán Böszörményi



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

Предыдущее
От: Magnus Hagander
Дата:
Сообщение: Re: urgent: upgraded to 8.2, getting kernel panics
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Re: COMMIT NOWAIT Performance Option