From: | Simon Riggs <simon(at)2ndquadrant(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Dynamically adding index types (was GIT indexes) |
Date: | 2007-09-19 07:15:43 |
Message-ID: | 1190186143.4164.11.camel@ebony.site |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, 2007-08-07 at 17:03 -0400, Tom Lane wrote:
> "Simon Riggs" <simon(at)2ndquadrant(dot)com> writes:
> > How hard will it be to add the infrastructure to allow new index types
> > to be added to the server dynamically?
>
> INSERT INTO pg_am VALUES (...);
>
> I don't really think we need more than that, at least not till non-core
> index AMs are a whole lot thicker on the ground than they are today.
We're able to dynamically add AMs in the way you suggest, but there is
no way to alter the RMgrTable to either add a new RM or re-assign one of
the unused RMs.
So we can add a new AM, but it can't write WAL in a different way to
existing RMs.
We could either:
1. Remove the "Const" in front of RmgrTable in rmgr.c. That would allow
re-assignment of the two existing unused RMs.
2. Create a new catalog table pg_rm and some brief machinery to populate
the RmgrTable from pg_rm. That would allow dynamically adding RMs.
Seems like we could do (1) for 8.3 easily enough.
Thoughts, please?
--
Simon Riggs
2ndQuadrant http://www.2ndQuadrant.com
From | Date | Subject | |
---|---|---|---|
Next Message | Gregory Stark | 2007-09-19 08:12:30 | Re: Open issues for HOT patch |
Previous Message | Guillaume Smet | 2007-09-19 07:08:58 | Re: First steps with 8.3 and autovacuum launcher |