Greg Williamson <gwilliamson39@yahoo.com> writes:
> We have a small database (few hundred megs of data, lass than half that in indexes) that suffers from index bloat.
Currentlywe handle this with an hourly REINDEX command. This works but causes some small issues, so I have been
expploringother methods.
> When I try to to drop constraints (typically UNIQUE) I sometimes get a crash of the psql client at the ALTER TABLE X
DROPCONSTRAINT, and sometimes after I recreate the constraint at a commit. Transcript below:
> usher=# BEGIN;
> BEGIN
> gusher=# ALTER TABLE ourcodes DROP CONSTRAINT IF EXISTS ourcodes_pkey CASCADE;
> ALTER TABLE
> gusher=# ALTER TABLE ourcodes ADD CONSTRAINT ourcodes_pkey PRIMARY KEY (id);
> NOTICE: ALTER TABLE / ADD PRIMARY KEY will create implicit index "ourcodes_pkey" for table "ourcodes"
> ALTER TABLE
> gusher=# COMMIT;
> FATAL: terminating connection due to administrator command
WTF? That should certainly not happen. Have you perhaps got a script
that runs around sending SIGTERM to backends that it thinks are blocking
something? Does anything show up in the postmaster log when this
happens?
regards, tom lane