Re: Write Ahead Logging for Hash Indexes

Mark Kirkwood <mark.kirkwood@catalyst.net.nz>

From: Mark Kirkwood <mark.kirkwood@catalyst.net.nz>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2016-08-24T05:01:12Z
Lists: pgsql-hackers

Attachments

On 24/08/16 16:52, Mark Kirkwood wrote:
> On 24/08/16 16:33, Amit Kapila wrote:
>> On Wed, Aug 24, 2016 at 9:53 AM, Mark Kirkwood
>> <mark.kirkwood@catalyst.net.nz> wrote:
>>> On 24/08/16 15:36, Amit Kapila wrote:
>>>> On Wed, Aug 24, 2016 at 8:54 AM, Mark Kirkwood
>>>> <mark.kirkwood@catalyst.net.nz> wrote:
>>>> Can you get the call stacks?
>>>>
>>> For every stuck backend? (just double checking)...
>> Yeah.
>>
>
> Cool,
>
> I managed to reproduce with a reduced workload of 4 backends, then 
> noticed that the traces for 3 of 'em were all the same. So I've 
> attached the 2 unique ones, plus noted what pg_stat_activity thought 
> the wait event was, in case that is useful.

...actually I was wrong there, only 2 of them were the same. So I've 
attached a new log of bt's of them all.


Commits

  1. Add a regression test for snapshot too old with hash indexes.

  2. hash: Add write-ahead logging support.

  3. Improve coding in _hash_addovflpage.

  4. Remove _hash_wrtbuf() in favor of calling MarkBufferDirty().

  5. Improve hash index bucket split behavior.