Re: Truncation of object names

From: ncm(at)zembu(dot)com (Nathan Myers)
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Truncation of object names
Date: 2001-04-13 20:12:38
Message-ID: 20010413131238.P3797@store.zembu.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Apr 13, 2001 at 02:54:47PM -0400, Tom Lane wrote:
> ncm(at)zembu(dot)com (Nathan Myers) writes:
> > Sorry, false alarm. When I got the test case, it turned out to
> > be the more familiar problem:
>
> > create table foo_..._bar1 (id1 ...);
> > [notice, "foo_..._bar1" truncated to "foo_..._bar"]
> > create table foo_..._bar (id2 ...);
> > [error, foo_..._bar already exists]
> > create index foo_..._bar_ix on foo_..._bar(id2);
> > [notice, "foo_..._bar_ix" truncated to "foo_..._bar"]
> > [error, foo_..._bar already exists]
> > [error, attribute "id2" not found]
>
> > It would be more helpful for the first "create" to fail so we don't
> > end up cluttered with objects that shouldn't exist, and which interfere
> > with operations on objects which should.
>
> Seems to me that if you want a bunch of CREATEs to be mutually
> dependent, then you wrap them all in a BEGIN/END block.

Yes, but... The second and third commands weren't supposed to be
related to the first at all, never mind dependent on it. They were
made dependent by PG crushing the names together.

We are thinking about working around the name length limitation
(encountered in migrating from other dbs) by allowing "foo.bar.baz"
name syntax, as a sort of rudimentary namespace mechanism. It ain't
schemas, but it's better than "foo__bar__baz".

Nathan Myers
ncm(at)zembu(dot)com

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Pascal Scheffers 2001-04-13 20:25:46 Re: pg_dump ordering problem (rc4)
Previous Message Tom Lane 2001-04-13 18:54:47 Re: Truncation of object names