It is applicable in my instance because i have turned autovacuum off because
of issues in 8.2. These may be solved in 8.3 but i haven't turned it back on
yet. So having the cron job run automatically for me is great and saved me
having to right my own.
Ideally i would like to get rid of the "incomplete startup packet errors"
and after reading below you may be implying that the bug is related to that
(debian implementation) and not the cron job itself. However i used to get
the same error from other clients and never even suspected the vacuum
scripts although looking now it does seem to be the only thing generating
them.
A cursory glance at the perl pg-common modules would suggest it connects to
the port to check it is alive but doesn't do anything, hence the error...
I'd love to have clean logs :) unfortuntately sometimes it is quicker to
check a warning/error is harmless and filter it out rather than fix
it and i don't have a lot of time left in the day for fixing messages i can
live with :(
On Sat, Dec 20, 2008 at 12:26 AM, John Lister
<john.lister-ps@xxxxxxxxxxxxx <mailto:john.lister-ps@xxxxxxxxxxxxx>>
wrote:
The pg_maintenance scripts check the state of the autovacuuum flag
in the postgres config files. If it is enabled they simply quit
and don't do anything. Disabling autovacuum causes them to run...
So you can leave them uncommented...
Why would you want to continue to run a cron job that is:
1) No longer applicable to the current version of software (Postgresql
8.1+)
2) Throwing an error in your logs?
The default behavior should be that this cron job is not active by default
if one is running Postgresql 8.1+
Although why it causes the "Incomplete start-up packet" messages
is a mystery...
Because the Debian and Debian derivative packages (Ubuntu) of
postgresql-common -- which is a required dependency for the main
postgresql package, was not rev'd correctly when the autovaccuum feature
was added by default into Postgresql. The script, pg_maintenance, is no
longer functioning as was intended against the current version. This is a
software bug, and I've filed bug reports in both the Debian and Ubuntu
systems.
A version check needs to happen on install of postgresql-common to
determine the correct behavior of pg_maintenance based upon the version of
PostgresSQL (patch exisiting package) or a new package needs to be created
for postgresql 8.1+.
In the meantime, if you are here because you want to know how to get rid
of the 'incomplete start-up packet' message in your postgresql logs
(thrown at the exact same interval as the referenced cron job) are running
a derivative of Debian (not sure if this happens with other distros or
OS's) comment out the cron job.
Unfortunately, the message is still thrown when starting and stopping
postgresql, since the init script in postgresql-common is also running the
pg_maintenance check. Hopefully, a patch will fix. This is something
much more reasonable to live with then a cron job that doesn't work
running every 5 hours.
Me, I like to bring up new systems with completely clean logs, and
identify, fix any errors in those logs if running an existing system, and
not run cron jobs that are not needed. ;>
Regards,
Jennifer
--
Sent via pgsql-admin mailing list (pgsql-admin@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-admin