Re: A thought on Index Organized Tables - Mailing list pgsql-hackers

From Gokulakannan Somasundaram
Subject Re: A thought on Index Organized Tables
Date
Msg-id 9362e74e1002242319w18d0524di21fd13ba5dabfc4f@mail.gmail.com
Whole thread Raw
In response to Re: A thought on Index Organized Tables  (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>)
Responses Re: A thought on Index Organized Tables
List pgsql-hackers

The WAL record of the heap insert/update/delete contains a flag
indicating that the visibility map needs to be updated too. Thus no need
for a separate WAL record.


Heikki,
        Have you considered these cases?
a) The current WAL architecture makes sure that the WAL Log is written before the actual page flush( i believe ). But you are changing that architecture  for Visibility maps. Visibility map might get flushed out before the corresponding WAL gets written. I think you would then suggest full page writes here
b) Say for a large table, you have multiple buffers of visibility map, then there is a chance that one buffer gets flushed to the disk and the other doesn't. If the WAL records are not in place, then this leads to a time inconsistent visibility map.
c) If you are going to track all the WAL linked with a buffer of visibility map, then you need to introduce another synchronization in the critical path.

May be i am missing something? I am asking these questions only out of curiosity.

Thanks,
Gokul.

pgsql-hackers by date:

Previous
From: "Joshua D. Drake"
Date:
Subject: Re: pg_stop_backup does not complete
Next
From: Heikki Linnakangas
Date:
Subject: Re: Assertion failure in walreceiver