| From: | Greg Burd <greg(at)burd(dot)me> |
|---|---|
| To: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
| Cc: | zhong950419(at)gmail(dot)com, manuelreyesbravo(at)gmail(dot)com, boekewurm+postgres(at)gmail(dot)com, hannuk(at)google(dot)com |
| Subject: | Re: UNDO with FILEOPS, and the FLUX table AM |
| Date: | 2026-10-29 15:40:15 |
| Message-ID: | auNohP9BuRBsdfpF@floki |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Sun, Oct 25, 2026 at 6:56 PM shihao zhong <zhong950419(at)gmail(dot)com> wrote:
> Matthias said the series does too much at once, and I agree. Maybe
> it could be split into a few smaller pieces. Each one would come
> with its own user.
Hi Shihao,
Agreed, and that is what I'll do next. The next version will be only
the first three commits, the cluster-wide UNDO engine and FILEOPS:
0001 cluster-wide UNDO engine (records in the WAL stream)
0002 transactional filesystem operations (FILEOPS) backed by UNDO
0003 route filesystem mutations through FILEOPS
The thread will cover just those from then on. The per-backend UNDO
logs, the ATM and logical revert worker, the index AM changes, the
table AM hooks and FLUX are set aside for now; they can come back later
as separate threads, each with its own user, if this part goes
anywhere.
FILEOPS is the user of the UNDO engine in that set, so it has the
shape you describe, an engine plus one consumer, though it is larger
than your sketch: 0001-0003 add about 17,000 lines, 12,500 of them C
outside the tests.
The series is already registered as CF 7389, so it has the cfbot GitHub
branch; I'll keep using that entry for the reduced series.
Thanks for the review, and for pushing on the scope.
best.
-greg
| From | Date | Subject | |
|---|---|---|---|
| Previous Message | Jan Nidzwetzki | 2026-10-29 15:34:32 | Re: [PATCH] Fix PITR pause bypass when initial XLOG_RUNNING_XACTS has subxid overflow |