On Tue, Apr 28, 2015 at 2:31 AM, Jim Nasby <
Jim.Nasby@bluetreble.com> wrote:
>
> On 4/25/15 12:12 AM, Amit Kapila wrote:
>>
>> > ... which isn't possible. You can not go from a heap tuple to an
>> index tuple.
>>
>> We will have the access to index value during delete, so why do you
>> think that we need linkage between heap and index tuple to perform
>> Delete operation? I think we need to think more to design Delete
>> .. by CTID, but that should be doable.
>
>
> The problem with just having the value is that if *anything* changes between how you evaluated the value when you created the index tuple and when you evaluate it a second time you'll corrupt your index.
>
I think I am missing something here, but when this second
evaluation is needed. Basically what I understand from index
insertion is that it evaluates the value to be inserted in index
before calling nbtree module and then nbtree just inserts the
value/tuple passed to it.