Re: Microvacuum support for Hash Index

From: Jesper Pedersen <jesper(dot)pedersen(at)redhat(dot)com>
To: Ashutosh Sharma <ashu(dot)coek88(at)gmail(dot)com>
Cc: Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Microvacuum support for Hash Index
Date: 2017-01-10 13:40:08
Message-ID: dc6d7247-050f-4014-8c80-a4ee676eb384@redhat.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi Ashutosh,

On 01/10/2017 05:24 AM, Ashutosh Sharma wrote:
> Thanks for reporting this problem. It is basically coming because i
> forgot to unpin the bucketbuf in hash_xlog_vacuum_one_page(). Please
> find the attached v5 patch that fixes the issue.
>

The crash is now fixed, but the

--- test.sql ---
\set id random(1,10)
\set val random(0,10)
BEGIN;
UPDATE test SET val = :val WHERE id = :id;
COMMIT;
--- test.sql ---

case gives

client 6 aborted in command 3 of script 0; ERROR: deadlock detected
DETAIL: Process 14608 waits for ShareLock on transaction 1444620;
blocked by process 14610.
Process 14610 waits for ShareLock on transaction 1444616; blocked by
process 14608.
HINT: See server log for query details.
CONTEXT: while rechecking updated tuple (12,3) in relation "test"
...

using pgbench -M prepared -c 10 -j 10 -T 300 -f test.sql test

Best regards,
Jesper

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Pavel Stehule 2017-01-10 13:41:39 Re: merging some features from plpgsql2 project
Previous Message Robert Haas 2017-01-10 13:37:56 Re: _hash_addovflpage has a bug