Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nXyNv-0003Ij-Fc for pgsql-admin@arkaria.postgresql.org; Sat, 26 Mar 2022 04:50:43 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nXyNu-0005HR-9G for pgsql-admin@arkaria.postgresql.org; Sat, 26 Mar 2022 04:50:42 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nXyNt-0005HH-Uu for pgsql-admin@lists.postgresql.org; Sat, 26 Mar 2022 04:50:41 +0000 Received: from mail-ej1-x62f.google.com ([2a00:1450:4864:20::62f]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1nXyNn-0001r3-Ac for pgsql-admin@lists.postgresql.org; Sat, 26 Mar 2022 04:50:41 +0000 Received: by mail-ej1-x62f.google.com with SMTP id bq8so4945791ejb.10 for ; Fri, 25 Mar 2022 21:50:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec-at.20210112.gappssmtp.com; s=20210112; h=message-id:subject:from:to:date:in-reply-to:references:user-agent :mime-version:content-transfer-encoding; bh=xhcGCr1XAfKVTA9QYo/j41UZjeosW0wUd+KbBmCwFZs=; b=23PApe/mHQKy9BsCvFerGSW7+gacF2MCwOozx1AirJoVPTqXGIF1sHZ6RiNEvjFzEJ KrZIFooyiIqWseaZsjkj0dP7I7fdaGHFQzv+kldORfeL10Z+zVfKVPlqNUMg8WszIFQN NCH/77r5c/NTk11JVNc54yY26TcdeKxi5uaX7Mqs9MiuzHAQMbH/tZnuUAaQlI5cRTQn 2Ov0WWmgehONTt9Je0nunuLy8V5nqlvtwhDIWTvnbId1uMbeNYedCNboQQ65w/eVJVpF cSG5qOYjbYqydx4FovO8Uxh5q0kliutJ/LXv7gdsNRKcStmFLNWgRCj/e+oC/WxqBeI6 yKxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:subject:from:to:date:in-reply-to :references:user-agent:mime-version:content-transfer-encoding; bh=xhcGCr1XAfKVTA9QYo/j41UZjeosW0wUd+KbBmCwFZs=; b=n1Wl4+gRqN32PDwGwOkQP6xxcdetbKN0elvKB8cqGITaVab/Hbm/CuK2F4OBCmMG1H muYmhsoQj2BA4v4zjsnsxBRA+Jkk9k/w1lyOXgamqi9tpt2VgBCAj7mp9NrHyLa8pVbW WZX4pp8qUGWu4Vj8J69Bmzet9PNJxiXuS/Gc+kkdeRLfScajDF/oBbudhtBoKRBo3OVq /4x5wQ30NxNaMZDM/+Hh3+HUpugVtOvrzOJuo6lPUlnwOSHjPUrNZnNStZHCEQeYtngZ XxnCVHZ26Qj+uXkz8j3ZqgPpcEad/K8J7NhcgG2WdOMMrwt+inTBe9CrDtFNo19BpslF DD1w== X-Gm-Message-State: AOAM532uW8KEUXrm0Z7SF/M77u9lHvZ9CtFrQMjteNziB5ZQaeFWNTer L/XcMekqTcyMBEXUE8p6rz/UuD/zR4Eagg== X-Google-Smtp-Source: ABdhPJwsmX9ZWVUmPQI5d5xS0cM+09202Y3zB0q+20uaQzYk6XAkhXe+HluNtYYs82M/Kufda3qPFw== X-Received: by 2002:a17:907:1b0e:b0:6da:81ae:a798 with SMTP id mp14-20020a1709071b0e00b006da81aea798mr15754972ejc.699.1648270233821; Fri, 25 Mar 2022 21:50:33 -0700 (PDT) Received: from localhost.localdomain (178-190-183-69.adsl.highway.telekom.at. [178.190.183.69]) by smtp.gmail.com with ESMTPSA id i11-20020a05640242cb00b0041922d3ce3bsm3841177edc.26.2022.03.25.21.50.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 25 Mar 2022 21:50:33 -0700 (PDT) Message-ID: Subject: Re: Avoid Wraparound Failures From: Laurenz Albe To: Ron , pgsql-admin@lists.postgresql.org Date: Sat, 26 Mar 2022 05:50:32 +0100 In-Reply-To: References: <965a52fe849ec6e5759d349b4063b5077353f24b.camel@cybertec.at> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.40.4 (3.40.4-3.fc34) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, 2022-03-25 at 23:45 -0500, Ron wrote: > > If you want to prevent that autovacuum run from happening while your system is > > busy (which normally also is no problem), you can trigger a manual VACUUM at > > a time of lower database activity.  But make it a plain VACUUM, not a > > VACUUM (FREEZE) > > Why not VACUUM FREEZE? Because then you freeze *all* visible rows, not only those that are older than "vacuum_freeze_min_age". That will cause more pages to get dirtied, so there will be more writing I/O. And unless all these rows won't get modified in the forseeable future, that is a waste. "vacuum_freeze_min_age" is there for a reason: the expectation is that rows that have not been modified for 50 million transactions have better odds at not getting modified soon. Yours, Laurenz Albe -- Cybertec | https://www.cybertec-postgresql.com