Dave Page wrote:
>>Andreas Pflug wrote:
>>>Guillaume LELARGE wrote:
>>>>Hi,
>>>>I found a weird bug today. If you rename the public
>>>>schema, it becomes
>>>>unavailable. Here is a patch to fix it. It modifies the
>>>>query to use
>>>>the oid instead of the schema's name. Works great on
>>>>Linux, should'nt
>>>>be a problem on win32.
>>>
>>>Actually, to me renaming the public schema appears as the
>>>primary bug...
>>>There are many ways to corrupt pgAdmin's behaviour, and you
>>>found one of
>>>'em. Renaming public is so irregular, I doubt it's worth
>>>changing the
>>>behaviour.
>>
>>This argument scares me... I believe a GUI-Tool shouldn't impose any
>>additional restrictions to what you can do with your database -
>>otherwise GUI-Users become second-class citzicens when
>>compared to those
>>who use the commandline/psql. Why exactly does pgadmin depend on
>>the existance of the public schema?
>
> The first thing that springs to mind is that we can only tell that it is
> *not* a system schema from it's name. The normal test (oid <
> LAST_SYSTEM_OID) doesn't work because it's created during (in
> template1/template0 at least).
Hm.. couldn't it check the system-schemas by name instead - so, saying
"it's a non-system schema if it isn't called information_schema or
pg_catalog", instead of "it's a system-schema if oid < LAST_SYSTEM_OID
and name is not public"? Or are there other system schemas I don't know
of (quite possible ;-) )?
greetings, Florian Pflug