RE: [HACKERS] DROP TABLE does not drop a table completely

From: "Hiroshi Inoue" <Inoue(at)tpf(dot)co(dot)jp>
To: "Vadim Mikheev" <vadim(at)krasnet(dot)ru>
Cc: "pgsql-hackers" <pgsql-hackers(at)postgresql(dot)org>
Subject: RE: [HACKERS] DROP TABLE does not drop a table completely
Date: 1999-05-17 07:40:56
Message-ID: 000801bea038$993d59a0$2801007e@cadzone.tpf.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-sql

> -----Original Message-----
> From: root(at)sunpine(dot)krs(dot)ru [mailto:root(at)sunpine(dot)krs(dot)ru]On Behalf Of Vadim
> Mikheev
> Sent: Monday, May 17, 1999 4:01 PM
> To: Hiroshi Inoue
> Cc: pgsql-hackers
> Subject: Re: [HACKERS] DROP TABLE does not drop a table completely
>
>
> Hiroshi Inoue wrote:
> >
> > > >
> > > > ERROR: cannot open segment 1 of relation sessions_done_id_index
> > > >
> > >
> > > I got the same error in my test cases.
> > > I don't understand the cause of this error.
> > >
> >
> > I got this error message by dropping a table while concurrent
> transactions
> > inserting rows to the same table.
> >
> > I think other transactions should abort with message "Table does not
> > exist". But in most cases the result is not so.
> >
> > It seems that other transactions could proceed before DROP TABLE
> > command is completed.
> >
> > AFAIC heap_destroy_with_catalog() acquires AccessExclusiveLock and
> > releases the lock inside the function.
> >
> > I think that heap_destroy_with_catalog() (or upper level
> function) should
> > not
> > release the lock.
>
> You're right - this should be done keeping in mind that DROP is allowed
> inside BEGIN/END (long transactions), but I'm not sure that this
> will help generally: does it matter when unlock dropped relation -
> in heap_destroy_with_catalog() or in commit?

Unlocking dropped relation before commit enables other transactions
proceed and the transactions regard the relation as still alive before the
^^^^^^^^^
commit of DROP TABLE command(It's right,I think). As a result,those
transactions behave strangely,though I don't know more about the
reason.

Thanks.

Hiroshi Inoue
Inoue(at)tpf(dot)co(dot)jp

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Jan Wieck 1999-05-17 08:18:24 Re: [HACKERS] rules regression test
Previous Message Vadim Mikheev 1999-05-17 07:01:19 Re: [HACKERS] DROP TABLE does not drop a table completely

Browse pgsql-sql by date

  From Date Subject
Next Message Jan Wieck 1999-05-17 09:56:24 Re: [SQL] Create Rule problems
Previous Message Vadim Mikheev 1999-05-17 07:01:19 Re: [HACKERS] DROP TABLE does not drop a table completely