Some strange bug with drop table with slony cluster - Mailing list pgsql-general

From Maxim Boguk
Subject Some strange bug with drop table with slony cluster
Date
Msg-id 4A394F58.3000600@masterhost.ru
Whole thread Raw
Responses Re: Some strange bug with drop table with slony cluster
Re: Some strange bug with drop table with slony cluster
List pgsql-general
DB version: PostgreSQL 8.3.6 (under linux)
no server/db crashes happen before.

Server was slave in slony replication.

Now problem:
table was unsubscribed from replication (without any errors)
and then dropped from master without any errors

But when i try drop table from slave i got very strange error:

hh=# drop TABLE metro_station_old;
ERROR:  "area_pk" is an index

hh=# \d+ metro_station_old
                             Table "public.metro_station_old"
       Column      |         Type          |           Modifiers           | Description
------------------+-----------------------+-------------------------------+-------------
  metro_station_id | integer               | not null                      |
  city_id          | integer               | not null                      |
  metro_line_id    | integer               | not null                      |
  city_district_id | integer               | not null                      |
  name             | character varying(64) | not null                      |
  image_point_x    | integer               |                               |
  image_point_y    | integer               |                               |
  acronym_line     | character varying(10) | default ''::character varying |
  colocation       | integer               |                               |
Foreign-key constraints:
     "metro_station_ibfk_1" FOREIGN KEY (city_id) REFERENCES area(area_id)
     "metro_station_ibfk_2" FOREIGN KEY (metro_line_id) REFERENCES metro_line(metro_line_id)
     "metro_station_ibfk_3" FOREIGN KEY (city_district_id) REFERENCES tables_to_drop.city_district(city_district_id)
Has OIDs: no

hh=# \d+ area_pk
      Index "public.area_pk"
  Column  |  Type   | Description
---------+---------+-------------
  area_id | integer |
primary key, btree, for table "public.area"

complete independent things.
Also:
hh=# ALTER TABLE metro_station_old drop constraint "metro_station_ibfk_1";
ERROR:  "area_pk" is an index
hh=# ALTER TABLE metro_station_old drop constraint "metro_station_ibfk_2";
ERROR:  "metro_line_pk" is an index
hh=# ALTER TABLE metro_station_old drop constraint "metro_station_ibfk_3";
ERROR:  "city_district_pk" is an index

First thing witch i think it is corrupted cache in shared memory or something like...
but fresh restart of db server do not change situation.

second thing is possible broken system indexes... but
reindex system hh;
not help too

hh=# SELECT oid from pg_class where relname='metro_station_old';
   oid
-------
  17542
(1 row)

hh=# SELECT oid from pg_class where relname='area_pk';
   oid
-------
  18933
(1 row)

Now i out of ideas.

Main thing what made me worry is second slave show same issue. So that is not single random error.

Because one of slaves is pure backup i can easy experiment with him.
But need any hints what to look next.

PS: one additional info... i can rename table via alter without errors. But still can't drop it.

--
SY, Maxim Boguk

pgsql-general by date:

Previous
From: artacus@comcast.net
Date:
Subject: Re: Naming functions with reserved words
Next
From: Scott Marlowe
Date:
Subject: partitioning example