On 12-07-24 01:48 PM, Robert Haas wrote:
> I am running into a lot of customer situations where the customer
> reports that "canceling autovacuum task" shows up in the logs, and
> it's unclear whether this is happening often enough to matter, and
> even more unclear what's causing it.
Could autovacuum be compacting a lot of space at the end of the table.
This is described
in the thread
http://archives.postgresql.org/message-id/4D8DF88E.7080205@Yahoo.com
> Me: So, do you know what table it's getting cancelled on?
> Customer: Nope.
> Me: Are you running any DDL commands anywhere in the cluster?
> Customer: Nope, absolutely none.
> Me: Well you've got to be running something somewhere or it wouldn't
> be having a lock conflict.
> Customer: OK, well I don't know of any. What should I do?
>
> It would be awfully nice if the process that does the cancelling would
> provide the same kind of reporting that we do for a deadlock: the
> relevant lock tag, the PID of the process sending the cancel, and the
> query string.
>
> Personally, I'm starting to have a sneaky suspicion that there is
> something actually broken here - that is, that there are lock
> conflicts involve here other than the obvious one (SHARE UPDATE
> EXCLUSIVE on the table) that are allowing autovac to get cancelled
> more often than we realize. But whether that's true or not, the
> current logging is wholly inadequate.
>
> Thoughts? Anybody else have this problem?
>