Received: from sss.pgh.pa.us ([192.204.191.242]) by postgresql.org (8.11.3/8.11.4) with ESMTP id g0MKg8l81714 for ; Tue, 22 Jan 2002 15:42:08 -0500 (EST) (envelope-from tgl@sss.pgh.pa.us) Received: from sss2.sss.pgh.pa.us (tgl@localhost [127.0.0.1]) by sss.pgh.pa.us (8.11.4/8.11.4) with ESMTP id g0MKfnf28202; Tue, 22 Jan 2002 15:41:49 -0500 (EST) To: Fernando Nasser cc: Peter Eisentraut , pgsql-hackers@postgresql.org Subject: Re: RFD: schemas and different kinds of Postgres objects In-reply-to: <3C4DCBDB.689D7201@redhat.com> References: <12239.1011661590@sss.pgh.pa.us> <3C4D8A39.FF79CDC4@redhat.com> <15339.1011716171@sss.pgh.pa.us> <3C4D96C5.80BBF764@redhat.com> <15638.1011718290@sss.pgh.pa.us> <3C4DCBDB.689D7201@redhat.com> Comments: In-reply-to Fernando Nasser message dated "Tue, 22 Jan 2002 15:30:20 -0500" Date: Tue, 22 Jan 2002 15:41:49 -0500 Message-ID: <28199.1011732109@sss.pgh.pa.us> From: Tom Lane X-Archive-Number: 200201/990 X-Sequence-Number: 17982 Fernando Nasser writes: > The only problem in the scenario above is that the standard says that > when creating objects and not specifying the schema the schema name > should be assumed to be the current user authorization id (or whatever > authorization id the code is running as). In our case it would go to > the default schema. If someone wants the SQL std behavior then, he/she > must create things inside a CREATE SCHEMA statement or explicitly > qualify > with the schema name the objects being created. Can we live with > that? Huh? You seem to be assuming that we need to support both the historical Postgres behavior and the SQL-standard behavior with exactly the same configuration switches. That's not how I'm seeing it at all. The way I'm envisioning it, you could get either the historical behavior, or the standard's behavior, depending on how you set up the configuration variables. I don't see any particular reason to limit the system to just those two cases, either, if the underlying implementation has enough flexibility to support custom namespace configurations. I believe that we could get the historical behavior with something like schema search path = ("public" schema, system schema); default creation schema = "public" schema and the standard's behavior with something like schema search path = (user's own schema, system schema); default creation schema = user's own schema (ignoring the issue of a schema for temp tables for the moment). If you prefer to think of these things as "namespaces" rather than "schemas", that's fine with me ... what we're talking about here is an implementation that can support SQL-style schemas, but isn't narrowly able to do only that. regards, tom lane