Received: from maia.hub.org (unknown [200.46.208.211]) by mail.postgresql.org (Postfix) with ESMTP id 7C591632F13 for ; Thu, 15 Apr 2010 17:01:11 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.208.211]) (amavisd-maia, port 10024) with ESMTP id 42593-09 for ; Thu, 15 Apr 2010 20:00:56 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from spinlock.commandprompt.com (host-215.commandprompt.net [207.173.203.215]) by mail.postgresql.org (Postfix) with ESMTP id BC50E632757 for ; Thu, 15 Apr 2010 17:01:00 -0300 (ADT) Received: from localhost (localhost [127.0.0.1]) by spinlock.commandprompt.com (Postfix) with ESMTP id 3CCEE348037; Thu, 15 Apr 2010 13:00:59 -0700 (PDT) Received: from spinlock.commandprompt.com ([127.0.0.1]) by localhost (spinlock.commandprompt.com.commandprompt.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id phPm89WvonGj; Thu, 15 Apr 2010 13:00:59 -0700 (PDT) Received: from perhan.alvh.no-ip.org (unknown [190.95.11.237]) by spinlock.commandprompt.com (Postfix) with ESMTPSA id C77A4348035; Thu, 15 Apr 2010 13:00:58 -0700 (PDT) Received: by perhan.alvh.no-ip.org (Postfix, from userid 1000) id 9B5F96E360; Thu, 15 Apr 2010 16:00:56 -0400 (CLT) Date: Thu, 15 Apr 2010 16:00:56 -0400 From: Alvaro Herrera To: Josh Berkus Cc: pgsql-performance@postgresql.org Subject: Re: Autovaccum with cost_delay does not complete on one solaris 5.10 machine Message-ID: <20100415200056.GJ7259@alvh.no-ip.org> References: <4BC76C9F.1020200@agliodbs.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <4BC76C9F.1020200@agliodbs.com> User-Agent: Mutt/1.5.20 (2009-06-14) X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-2.182 tagged_above=-10 required=5 tests=AWL=-0.282, BAYES_00=-1.9 X-Spam-Level: X-Archive-Number: 201004/188 X-Sequence-Number: 38438 Josh Berkus wrote: > Basically, vacuuming of a table which normally takes about 20 minutes > interactively with vacuum_cost_delay set to 20 had not completed after > 14 hours. When I trussed it, I saw activity which indicated to me that > autovacuum was doing a pollsys, presumably for cost_limit, every data page. > > Autovacuum was running with vacuum_cost_limit = 200 and > autovacuum_vacuum_cost_delay = 20, which I believe is the default for 8.3. > > Truss output: > > pollsys(0xFFFFFD7FFFDF83E0, 0, 0xFFFFFD7FFFDF8470, 0x00000000) = 0 So what is it polling? Please try "truss -v pollsys"; is there a way in Solaris to report what each file descriptor is pointing to? (In linux I'd look at /proc//fd) We don't call pollsys anywhere. Something in Solaris must be doing it under the hood. -- Alvaro Herrera http://www.CommandPrompt.com/ The PostgreSQL Company - Command Prompt, Inc.