Re: Error with index on unlogged table
От | Andres Freund |
---|---|
Тема | Re: Error with index on unlogged table |
Дата | |
Msg-id | EA7EE062-11CB-4FD3-B36C-EA2CB97633BE@anarazel.de обсуждение исходный текст |
Ответ на | Re: Error with index on unlogged table (Michael Paquier <michael.paquier@gmail.com>) |
Ответы |
Re: Error with index on unlogged table
|
Список | pgsql-hackers |
On December 10, 2015 5:02:27 AM GMT+01:00, Michael Paquier <michael.paquier@gmail.com> wrote: >On Wed, Dec 9, 2015 at 9:07 PM, Andres Freund <andres@anarazel.de> >wrote: >> On 2015-12-09 21:03:47 +0900, Michael Paquier wrote: >>> Oh, OK. I didn't read though your lines correctly. So you basically >>> mean that we would look at the init files that are on disk, and >check >>> if they are empty. If they are, we simply use XLogReadBufferExtended >>> to fetch the INIT_FORKNUM content and fill in another buffer for the >>> MAIN_FORKNUM. More or less right? >> >> We would not just do so if they're empty, we would just generally >copy the file >> via shared buffers, instead of copy_file(). But we'd get the file >size >> from the filesystem (which is fine, we make sure it is correct during >> replay). > >So, this suggestion is basically implementing the reverse operation of >GetRelationPath() to be able to rebuild a RelFileNode from scratch and >then look at the shared buffers needed. Isn't it a bit brittle for >back-branches? RelFileNode stuff is available easily through records >when replaying individually FPIs, but not really in this code path. Oh, sorry. In definitely not thinking about doing this for the back branches. That was more musing about a way to optimizethis. Andres --- Please excuse brevity and formatting - I am writing this on my mobile phone.
В списке pgsql-hackers по дате отправления: