Hello all,
we're using PostgreSQL 8.2.5 with some 300 databases under CentOS 4.6.
To reduce on-disk size of our DBs, we're doing the following after
the nightly dumps:
reindexdb dbname
vacuumdb -f -z dbname
Now, this works fine about 50% of the time, but on some machines, the
reindexdb dies from a SIGPIPE signal. The logs look like this:
Aug 3 04:08:10 prospero postgres[27101]: [1-1] NOTICE: table
"pg_class" was reindexed
Aug 3 04:08:11 prospero postgres[27101]: [2-1] NOTICE: table
"sql_sizing" was reindexed
Aug 3 04:08:11 prospero postgres[27101]: [3-1] LOG: could not send
data to client: Broken pipe
Aug 3 04:08:11 prospero postgres[27101]: [4-1] NOTICE: table
"sql_sizing_profiles" was reindexed
Aug 3 04:08:11 prospero postgres[27101]: [5-1] NOTICE: table
"sql_features" was reindexed
...
Aug 3 04:08:18 prospero postgres[27101]: [39-1] NOTICE: table
"shoprules" was reindexed
Aug 3 04:08:18 prospero postgres[27101]: [40-1] LOG: unexpected EOF on
client connection
So, it looks to me like the REINDEX command is completed, but the
reindexdb tool dies. This is run via a nightly cronjob; I never saw
those problems if I invoke reindexdb on the command line.
We did get a notice to increase max_fsm_pages at first though, so
we increased it with good margin, but the SIGPIPE problem persists.
What is going wrong here?
Thanks for your help,
Torsten