Re: [HACKERS] AdvanceXLInsertBuffer vs. WAL segment compressibility
От | Daniel Gustafsson |
---|---|
Тема | Re: [HACKERS] AdvanceXLInsertBuffer vs. WAL segment compressibility |
Дата | |
Msg-id | 21C25ED8-4ED8-4AD4-B551-3E3987ECB18F@yesql.se обсуждение исходный текст |
Ответ на | Re: [HACKERS] AdvanceXLInsertBuffer vs. WAL segment compressibility (Chapman Flack <chap@anastigmatix.net>) |
Ответы |
Re: [HACKERS] AdvanceXLInsertBuffer vs. WAL segment compressibility
|
Список | pgsql-hackers |
> On 18 Mar 2018, at 22:54, Chapman Flack <chap@anastigmatix.net> wrote: > > On 03/18/18 16:56, Daniel Gustafsson wrote: >> sorry about that. Now we know that the proposed test fails without the patch >> applied and clears with it, that was at least an interesting side effect =) > > It was, and it got me looking at the test, and even though it does detect > the difference between patch-applied and patch-not-applied, I sort of wonder > if it does what it claims to. It seems to me that unpack('N8192', ...) > would want to return 8192 32-bit ints (in array context), but really only > be able to return 2048 of them (because it's only got 8192 bytes to unpack), > and then being used in scalar context, it only returns the first one anyway, > so the test only hinges on whether the first four bytes of the block are > zero or not. Which turns out to be enough to catch a non-zeroed header. :) Good point, thats what I get for hacking without enough coffee. > What would you think about replacing the last two lines with just > > ok($bytes =~ /\A\x00*+\z/, 'make sure wal segment is zeroed’); It seems expensive to regex over BLCKSZ, but it’s probably the safest option and it’s not a performance critical codepath. Feel free to whack the test patch over the head with the above diff. cheers ./daniel
В списке pgsql-hackers по дате отправления: