Re: Extensible Rmgr for Table AMs
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Jeff Davis <pgsql@j-davis.com>
Cc: "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>,
Andres Freund <andres@anarazel.de>, Amit Kapila <amit.kapila16@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, Simon Riggs <simon@2ndquadrant.com>
Date: 2021-11-10T14:58:14Z
Lists: pgsql-hackers
On Mon, Nov 8, 2021 at 6:36 PM Jeff Davis <pgsql@j-davis.com> wrote: > Extensible rmgr would enable the table AM to support its own > redo/decode hooks and WAL format, so that it could support crash > recovery, physical replication, and logical replication. Without taking a position on your implementation, which I have not studied, I like this idea in concept and I think it's an important goal. > Are there any other major arguments/objections that I missed? ISTR some discussion of the fact that uninstalling the extension that uses this facility, or failing to install it on your standby, will lead to an unusable database. Personally, I don't see that as a big problem: we should just document that if you choose to use an extension like this, then (1) it needs to be installed on all standbys and (2) if you ever want to get rid of it, you need to stop using it, drop all the objects created with it, and then wait until all the WAL previously generated by that extension is gone not only from pg_wal but from any archived WAL files or backups that you intend to use with that cluster before you actually nuke it. Users who don't want to abide by those restrictions need not install such extensions. Users who don't read the documentation might end up sad, but it doesn't seem particularly likely, and it's hardly the only part of the documentation that users shouldn't ignore. -- Robert Haas EDB: http://www.enterprisedb.com
Commits
-
Fix off-by-one error in pg_waldump, introduced in 5c279a6d350.
- dad97e0502b4 15.0 landed
-
Fix another buildfarm issue from commit 5c279a6d350.
- 957aa4d87a41 15.0 landed
-
Fix warning introduced in 5c279a6d350.
- 9553b4115f18 15.0 landed
-
Custom WAL Resource Managers.
- 5c279a6d3502 15.0 landed
-
Make logical decoding a part of the rmgr.
- 7a5f6b47488d 15.0 landed