Re: Plugin system like Firefox
От | Markus Wanner |
---|---|
Тема | Re: Plugin system like Firefox |
Дата | |
Msg-id | 48A14645.9040501@bluegap.ch обсуждение исходный текст |
Ответ на | Plugin system like Firefox (Bruce Momjian <bruce@momjian.us>) |
Ответы |
Re: Plugin system like Firefox
|
Список | pgsql-hackers |
Hi, Bruce Momjian wrote: > So, ideally, if we do a plug-in system, I think we need some way to have > these plugins be very easily installed, perhaps by choosing object files > pre-compile by the build farm for each operating system. IIRC the main problem isn't compilation and packaging of plugins. On your Ubuntu system, for example, you can easily install 'postgresql-contrib-8.x' and get most of the contrib modules as *.so libraries. You'll even find the install_*.sql and uninstall_*.sql scripts in '/usr/share/postgresql/8.x/contrib'. The main problem I see is ease of installation and backup/restore capability of these modules. Installing the tsearch2 module with: psql $YOURDB < /usr/share/postgresql/8.x/contrib/tsearch2.sql ..is already quite easy to do. But beware of the trouble when trying to back up and restore that database later on! At the moment, we distinguish between system objects, initdb objects and user objects by OID: #define FirstBootstrapObjectId 10000 #define FirstNormalObjectId 16384 But objects created by modules are indistinguishable from user objects. IMO, that's the main problem. Maybe we can solve this by reserving yet another range of OIDs for modules. Then treat these objects as 'system' objects during a pg_dump? I'm not sure if such a limited range of OIDs is a good idea, but IMO the ability to tell apart system, module and user objects is the key feature required here. Regards Markus Wanner
В списке pgsql-hackers по дате отправления: