> > If for posterity alone, I'm willing to move the char[24816] code to contrib.
> > I already have the create and load statements in an sql file, just have to
> > polish the Makefile a little. If not with the distribution, then perhaps
> > this could be at the web site for downloading.
> >
> > Having the code available for loading might be easier for persons such as
> > Tatsuo instead of having their users complain of something disappearing.
> >
> > My only intention in doing this is to lighten up the postgres core, not to
> > force others to change their existing code.
>
> Unless there is a proven performance boost to removing things from
> the core, which, at this point in time, hasn't been demonstrated,
> *nothing* should be removed from the core...
>
> ...in fact, I want to bring in the IP code from contrib as part of
> the core yet...
Would be nice if stuff like that (and the money and geometrics) could be
compiled in in the same manner that Apache is a basic web server that lets
you pick and choose modules/features you want to build into it.
I don't know how big of a performance boost it provides in the cache, but
removing the functions associated with the char types shrank the pg_proc
table from 906 to 842 entries or a bit over 7%.
Want to shrink it further? Of those remaining 842, _230_ are for the geometric
types! Throw in 25 more for the cash/money functions. Bloat city if you
never use these things. Thirty percent could be moved out to contrib and
not missed by most postgres users.
I think a reasonable goal is to provide an sql server that meets the current sql
standard with the possibility of having other types and functionality available
as modules. These modules could be made into the template1 at compile time
or made and installed on a per-database basis. Make your server and database
with whatever you want in it.
Why force others to have functionality 'x', 'y' and 'z' when they only want 'y'?
darrenk