Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1ub2Al-00CuN9-UV for pgsql-hackers@arkaria.postgresql.org; Sun, 13 Jul 2025 19:15:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1ub2Aj-000Jyn-TU for pgsql-hackers@arkaria.postgresql.org; Sun, 13 Jul 2025 19:15:38 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1ub2Aj-000Jyf-KH for pgsql-hackers@lists.postgresql.org; Sun, 13 Jul 2025 19:15:38 +0000 Received: from mail-ed1-x533.google.com ([2a00:1450:4864:20::533]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1ub2Ai-007Nux-0D for pgsql-hackers@lists.postgresql.org; Sun, 13 Jul 2025 19:15:37 +0000 Received: by mail-ed1-x533.google.com with SMTP id 4fb4d7f45d1cf-607ec30df2bso7226003a12.1 for ; Sun, 13 Jul 2025 12:15:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752434134; x=1753038934; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=SmEn84d7n1jXwZOqTn3bh5KqjCWCNQTsSqzkpFZzbA0=; b=drXqxc2Wh0p35tVZJF52oELDBxOXxLBYfwOCV2Zm/UqJQIbVrddSJGOfx6ksFoefP2 O0c2+bh0/L8H649KZKQAcLtHVM6hhI6Ro7NC1FJPoFwzoYM5gPhIgP9lY9FDcGNqAnow MCdT9XZ8SKEx5fSMfQMQ3n7Y5KFJ/Mxl0+rc+jxgXppkJ21rHuZ8Ekx3Bz6WwGEFyyjl RRzMj7ZG9NWvjfa4YX2VUQh/uLHW86B0L0bexWsyInMY+sg4TGQK2i9oDwaSPvhaEupy Odxi4eGSG4/aaPxNpcK2GUrvEKo1/+L/bjt3R87zq049RA8AS3Lmz+FEJi8NHvDu74If WBxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752434134; x=1753038934; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SmEn84d7n1jXwZOqTn3bh5KqjCWCNQTsSqzkpFZzbA0=; b=qC9UIO3iDvLIe/hAkbH5pin+bQeMoKnjOlC/2r0LLm3pSOt3b6TjdfGaMMd6G21tCS I5nuN1/G8+MW4IfbpLG9bfItNHZkemNZVa24u9vHfbOR81ifLEuVXPdUhe1jwES0JPaD 7Am4N3/y020Vtd6X6XpB0/Emi39bLexUNx6GHJRXa8If/Krr2t37+TXSfqRWsQsi+cs3 rpOu7k2OAzggKsG63FmmFuCfDc/mHh02BnoS9U9ZvuFWevK0fXaS/gikAli1/6dppC+K LCk19YxSoaR9YZDSe3+slecu9tYEFu+GHb9awRsL75GrPNziqkAYxgh1wHVv6sTI92Pq D9HQ== X-Gm-Message-State: AOJu0YxUn0wcxEaSjQeKZ3FypZ4XImgYXfrZsQ4w+EovV8Uf4k1B5K2X QR/p8LJBDRZhkkKB4/26OM1sDaeMPFGbnGrHVdifPcSEjrduDfU32zle8OGuSDyImF/8PHyRihq ptGOHQ+UnjXTvEg9KSY+ahCbP3LVf5q0= X-Gm-Gg: ASbGncsPifEa5wP/nnJQmhRa8Eu9JdBe3GPUvtUxeqmuJrHf+waywJe0XVAtGJamZue 6mGsomowOHHBK6Qs79rqEqYRgjQZPnSp8NXwFnQZ8cyd0m5gzxjBOQ00FTNTjwt8rS+XFU65Iau R/tTwkClU8zZBZjX+OsEUPbYX7IobNTMF91Web/AkFFBRGOl67K01qaFEYUx4+ulO9hMjoC0bgX XXR/i0= X-Google-Smtp-Source: AGHT+IGy7cgZ5L/qlF9W5yRC/dtC090NMyzCSINdPVTb9M0W8tUDmJ4d4lGZ+TFaQoLQTiAd5auIGmWxRyEVQLiz8qA= X-Received: by 2002:a05:6402:385:b0:60e:404:a907 with SMTP id 4fb4d7f45d1cf-611e84e7957mr7291605a12.29.1752434134093; Sun, 13 Jul 2025 12:15:34 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Melanie Plageman Date: Sun, 13 Jul 2025 15:15:22 -0400 X-Gm-Features: Ac12FXyu0lVRM2IGezGBZzmUXltSbFl7y7evHWBH-xqzUjubGSvmRMcBZHr7ZDA Message-ID: Subject: Re: eliminate xl_heap_visible to reduce WAL (and eventually set VM on-access) To: Andrey Borodin Cc: PostgreSQL Hackers , Andres Freund , Robert Haas Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Sun, Jul 13, 2025 at 2:34=E2=80=AFPM Andrey Borodin wrote: > > > On 12 Jul 2025, at 03:19, Melanie Plageman = wrote: > > > > remove the xl_heap_visible struct > > Same goes for VISIBILITYMAP_XLOG_CATALOG_REL and XLOG_HEAP2_VISIBLE. But = please do not rush to remove it, perhaps I will have a more exhaustive list= later. Currently the patch set is expected to be unpolished. > I just need to absorb all effects to have a high-level evaluation of the = patch set effect. I actually did remove those if you check the last version posted. I did notice there is one remaining comment referring to XLOG_HEAP2_VISIBLE I missed somehow, but the actual enums/macros were removed already. > I'm still trying to grasp connection of first patch with Assert(prstate->= cutoffs) to other patches; I added this because I noticed that it was used without validating it was provided in that location. The last patch in the set which sets the VM on access changes where cutoffs are used, so I noticed what I felt was a missing assert in master while developing that page. > Also, I'd prefer "page is not marked all-visible but visibility map bit i= s set in relation" to emit XX001 for monitoring reasons, but again, this is= small note, while I need a broader picture. Could you clarify what you mean by this? Are you talking about the string representation of the visibility map bits in the WAL record representations in heapdesc.c? - Melanie