| 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-19 13:43:56 |
| Message-ID: | 7457d0bf-891c-2fcd-64ab-a8ce8e7ea047@redhat.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi Ashutosh,
On 01/10/2017 08:40 AM, Jesper Pedersen wrote:
> 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
>
I'm not seeing this deadlock with just the WAL v8 patch applied.
Best regards,
Jesper
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Ants Aasma | 2017-01-19 14:01:28 | Re: Causal reads take II |
| Previous Message | Karl O. Pinc | 2017-01-19 13:11:31 | Re: Patch to implement pg_current_logfile() function |