Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1X4Hkx-0005ml-Dc for pgsql-admin@arkaria.postgresql.org; Mon, 07 Jul 2014 22:51:31 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.80) (envelope-from ) id 1X4Hku-0008CL-Oa for pgsql-admin@arkaria.postgresql.org; Mon, 07 Jul 2014 22:51:28 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from ) id 1X4Hkt-0008CB-W5; Mon, 07 Jul 2014 22:51:28 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by magus.postgresql.org with esmtps (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from ) id 1X4Hkq-0005Jv-Kx; Mon, 07 Jul 2014 22:51:26 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.14.4/8.14.4) with ESMTP id s67MpGAE012554; Mon, 7 Jul 2014 18:51:16 -0400 From: Tom Lane To: Prabhjot Sheena cc: Scott Whitney , Alvaro Herrera , "pgsql-admin@postgresql.org" , Forums postgresql Subject: Re: [GENERAL] WARNING: database must be vacuumed within 8439472 transactions In-reply-to: References: Comments: In-reply-to Prabhjot Sheena message dated "Mon, 07 Jul 2014 14:14:50 -0700" Date: Mon, 07 Jul 2014 18:51:16 -0400 Message-ID: <12553.1404773476@sss.pgh.pa.us> X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-admin Precedence: bulk Sender: pgsql-admin-owner@postgresql.org Prabhjot Sheena writes: > i will run full vacuum than and see how it goes. I think that is seriously bad advice. It will take longer and not do anything more to resolve your immediate problem --- which, it appears, you don't have a whole lot of time to resolve if you want to avoid a forced shutdown. It would likely be worth your time to figure out which table(s) in which database(s) are actually causing this issue, and vacuum those first, instead of blindly vacuuming everything. This will tell you which database(s) are most problematic: select datname, age(datfrozenxid) from pg_database order by 2 desc; and then within those database(s) you can similarly do select relname, age(relfrozenxid) from pg_class where relkind = 'r' order by 2 desc; to find the most problematic table(s). BTW, did you perhaps turn autovacuum off, or cripple its performance through ill-chosen throttling settings? It really should've kept you out of this problem. regards, tom lane -- Sent via pgsql-admin mailing list (pgsql-admin@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-admin