From: | Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com> |
---|---|
To: | noah(at)leadboat(dot)com |
Cc: | robertmhaas(at)gmail(dot)com, pgsql-hackers(at)postgresql(dot)org, 9erthalion6(at)gmail(dot)com, andrew(dot)dunstan(at)2ndquadrant(dot)com, hlinnaka(at)iki(dot)fi, michael(at)paquier(dot)xyz |
Subject: | Re: [HACKERS] WAL logging problem in 9.4.3? |
Date: | 2020-01-15 08:18:57 |
Message-ID: | 20200115.171857.1170166613760719188.horikyota.ntt@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hello. I added a fix for the defect 2.
At Wed, 25 Dec 2019 16:15:21 -0800, Noah Misch <noah(at)leadboat(dot)com> wrote in
> === Defect 2: Forgets to skip WAL due to oversimplification in heap_create()
>
> In ALTER TABLE cases where TryReuseIndex() avoided an index rebuild, we need
> to transfer WAL-skipped state to the new index relation. Before v24nm, the
> new index relation skipped WAL unconditionally. Since v24nm, the new index
> relation never skips WAL. I've added a test to alter_table.sql that reveals
> this problem under wal_level=minimal.
The fix for this defect utilizes the mechanism that preserves relcache
entry for dropped relation. If ATExecAddIndex can obtain such a
relcache entry for the old relation, it should hold the newness flags
and we can copy them to the new relcache entry. I added one member
named oldRelId to the struct IndexStmt to let the function access the
relcache entry for the old index relation.
I forgot to assing version 31 to the last patch, I reused the number
for this version.
regards.
--
Kyotaro Horiguchi
NTT Open Source Software Center
Attachment | Content-Type | Size |
---|---|---|
v31-0001-Rework-WAL-skipping-optimization.patch | text/x-patch | 86.0 KB |
v31-0002-Fix-the-defect-1.patch | text/x-patch | 6.0 KB |
v31-0003-Fix-the-defect-2.patch | text/x-patch | 2.9 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Leif Gunnar Erlandsen | 2020-01-15 08:25:17 | Re: pause recovery if pitr target not reached |
Previous Message | Michael Paquier | 2020-01-15 08:11:26 | Re: TRUNCATE on foreign tables |