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 1ndzzH-0001uS-1a for pgsql-hackers@arkaria.postgresql.org; Mon, 11 Apr 2022 19:46:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1ndzzF-00062O-MY for pgsql-hackers@arkaria.postgresql.org; Mon, 11 Apr 2022 19:46:09 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ndzzE-00062E-Tl for pgsql-hackers@lists.postgresql.org; Mon, 11 Apr 2022 19:46:09 +0000 Received: from mail-ej1-x62c.google.com ([2a00:1450:4864:20::62c]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1ndzz9-00053c-2P for pgsql-hackers@postgresql.org; Mon, 11 Apr 2022 19:46:07 +0000 Received: by mail-ej1-x62c.google.com with SMTP id g18so8089942ejc.10 for ; Mon, 11 Apr 2022 12:46:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb.com; s=google; h=message-id:subject:from:to:cc:date:in-reply-to:references :organization:user-agent:mime-version:content-transfer-encoding; bh=suSwkzhKB3rsCtAZlE+HU69qnCq54nP2lGCSbgr4w0A=; b=LegvDmoMBYp+kcJcgx6EyHKSS81KRj5davh/io6fB5vJZWwJPAKyyIqxoSiexLfE6h jkuo+3VT2RTts1QgFXkqvm3MU0oZOwcbOYY7hI/uj8tsy7pikt/pFR8MwAtPSfCqzeTd 2o0hLwsypvGEMGxZ+oIqKqmsigj7Gn7U+H6koscOXAA9NsPiCkwXqs4y7ncd3E61AQGG CMo++gFPE9oBuleXK2mvzuPpk6V4Xp/gk7ebTq0i5zAn/m8YfbapYCe0Qwn4KdQH91hc Nk1DXk633Ku2Y1bFRg/8WxwFKMvb9EB3YHDHHwAsg/U8h5CmTYAVbvJDPcrWgxwO4+CT Xd/g== 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:cc:date:in-reply-to :references:organization:user-agent:mime-version :content-transfer-encoding; bh=suSwkzhKB3rsCtAZlE+HU69qnCq54nP2lGCSbgr4w0A=; b=6Xg/bevZPM/xUm6itab4qFn6V9EfN0/XSxaUzgIVAjI3XvGPaeJwyDvo6UdXsiZ7Qi 4rDRp/aG4mLTRjitSDZiSw8N6SBKeFazzxwfsVbPj2R5hemBGFA/9Oup/17kFO+xa1xF UE17dIqSThy09bFo3M7noLyrtbSj6Y4kFgp2ecwNV3dxoVrT8iyIv0IVlDIJFfMNQ+cP HLKmN8LvZ7znnYDVNvqDu0F5e8qFqkj8Rsu3cHyodv8twbQls159K0p0IjhqjB7Wk7tZ O/QJ/A4OBMFGF4FYxtqkncxSlNh5abWSWboeERLjgOlIutco0xiGBdeXecbnOF0h96MM 6krg== X-Gm-Message-State: AOAM533f3foKW36nhggLpcHXFxmq/a+icKeMIpUUH1rhuj8fFBpRtDrU roQjRY7PrlX8bEPfrN/vkg8TzyzqW3lwal+rEavo1fa+ktnwRpJoIyb7I9EFsI1NtejweGd6A0E loijWR/DRuVnAOjFQBLNDr1OKXz6WjNgbmpWERFkIXDP+GhUzl6CS2jKBAz6FG8kE5i52D7jopa RB5Is0T1wQRGMVFwilolkjunglVuWsdqjzCV7Sq+SMJZvc X-Google-Smtp-Source: ABdhPJzecao8pzFvoH6j9sUADUZhTA3R5cwLsHoPLlOrNjCYYe83JJv0Tg3xpqohMndtmE7PJMk7ww== X-Received: by 2002:a17:907:3f09:b0:6e8:4725:8247 with SMTP id hq9-20020a1709073f0900b006e847258247mr16895009ejc.605.1649706361689; Mon, 11 Apr 2022 12:46:01 -0700 (PDT) Received: from [10.80.18.104] ([145.40.212.39]) by smtp.gmail.com with ESMTPSA id n6-20020aa7c786000000b00410d2403ccfsm15527170eds.21.2022.04.11.12.46.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 Apr 2022 12:46:00 -0700 (PDT) Message-ID: Subject: Re: API stability [was: pgsql: Fix possible recovery trouble if TRUNCATE overlaps a checkpoint.] From: Markus Wanner To: Robert Haas Cc: Michael Paquier , Tom Lane , "pgsql-hackers@postgresql.org" , Kyotaro Horiguchi Date: Mon, 11 Apr 2022 21:45:59 +0200 In-Reply-To: References: <2358496.1649168259@sss.pgh.pa.us> Organization: EDB Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.38.3-1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-CLOUD-SEC-AV-Info: enterprisedb,google_mail,monitor X-CLOUD-SEC-AV-Sent: true X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, 2022-04-11 at 15:21 -0400, Robert Haas wrote: > ... before v13, the commit in question actually > changed the size of PGXACT, which is really quite bad -- it needs to > be 12 bytes for performance reasons. And there's no spare bytes > available, so I think we should follow one of the suggestions that he > had over in that email thread, and put delayChkptEnd in PGPROC even > though delayChkpt is in PGXACT. This makes sense to me. Kudos to Kyotaro for considering this. At first read, this sounded like a trade-off between compatibility and performance for PG 12 and older. But I realize leaving delayChkpt in PGXACT and adding just delayChkptEnd to PGPROC is compatible and leaves PGXACT at a size of 12 bytes. So this sounds like a good approach to me. Best Regards Markus