Hi all,

I'm seeing this on a fresh build from CVS:

$ ./configure && make && make check
...
$ cd src/test/regress/tmp_check
$ ./install/tmp/pgsql/bin/postgres -D data regression
LOG:  database system was shut down at 2002-04-15 15:03:58 EDT
LOG:  checkpoint record is at 0/160368C
LOG:  redo record is at 0/160368C; undo record is at 0/0; shutdown TRUE
LOG:  next transaction id: 4551; next oid: 139771
LOG:  database system is ready

POSTGRES backend interactive interface 
$Revision: 1.260 $ $Date: 2002/03/24 04:31:07 $

backend> create table foo (c1 int);
ERROR:  invalid relation "foo"; system catalog modifications are currently disallowed
backend> create schema x;
backend> create table x.bar (c1 int);
backend>

Is this the expected behavior? I haven't been following the schema
work very closely, but this was quite a surprise to me...

Cheers,

Neil

-- 
Neil Conway <neilconway@rogers.com>
PGP Key ID: DB3C29FC

Mon, 15 Apr 2002 15:07:19 -0400
Neil Conway <nconway@klamath.dyndns.org>
regression in CVS HEAD
Neil Conway <nconway@klamath.dyndns.org> writes:
> POSTGRES backend interactive interface 
> $Revision: 1.260 $ $Date: 2002/03/24 04:31:07 $

> backend> create table foo (c1 int);
> ERROR:  invalid relation "foo"; system catalog modifications are currently disallowed
> backend> create schema x;
> backend> create table x.bar (c1 int);
> backend>

> Is this the expected behavior?

It is at the moment but I'm planning to change it.  Currently, a
standalone backend defaults to pg_catalog being the target creation
namespace, which is needed by initdb; but I was planning to make initdb
explicitly set the search_path to pg_catalog, because it seems like a
bad idea for pg_catalog to ever be the default target.

In the meantime, try an explicit
	set search_path = 'public';
then "create table foo" would create public.foo which will be allowed.

			regards, tom lane

Mon, 15 Apr 2002 15:56:33 -0400
Tom Lane <tgl@sss.pgh.pa.us>
Re: regression in CVS HEAD 
Neil Conway <nconway@klamath.dyndns.org> writes:
> backend> create table foo (c1 int);
> ERROR:  invalid relation "foo"; system catalog modifications are currently disallowed

I've committed a fix for this.

BTW, I dunno about other developers, but I never use standalone backends
for debugging.  It's a lot nicer to open two windows, run a regular psql
in one, and use the other to run gdb and "attach" to the backend
process.

			regards, tom lane

Mon, 15 Apr 2002 18:36:23 -0400
Tom Lane <tgl@sss.pgh.pa.us>
Re: regression in CVS HEAD 