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

--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to