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 1nIb1X-00009n-57 for pgsql-hackers@arkaria.postgresql.org; Fri, 11 Feb 2022 18:52:03 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nIb1V-0002cM-Ih for pgsql-hackers@arkaria.postgresql.org; Fri, 11 Feb 2022 18:52:01 +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 1nIb1V-0002cD-6L for pgsql-hackers@lists.postgresql.org; Fri, 11 Feb 2022 18:52:01 +0000 Received: from mail-io1-xd2c.google.com ([2607:f8b0:4864:20::d2c]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1nIb1N-0008DU-CN for pgsql-hackers@lists.postgresql.org; Fri, 11 Feb 2022 18:52:00 +0000 Received: by mail-io1-xd2c.google.com with SMTP id e79so12462827iof.13 for ; Fri, 11 Feb 2022 10:51:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telsasoft-com.20210112.gappssmtp.com; s=20210112; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=8J5KZm/A/NUV2Z5VjfFFzYs8dkhwVq0vSDOwv31cR9E=; b=UZhqSRNu/CImyh8M6cM3cBMd7Dkk57w2a/Nb1/g+G6q+5ych6M/0ePkf0efz5iQkTU hTPjuCYqKyR2AlGSdimhTG06tZ2P1Aqtg3OkUTkbH4FOLPNOehrkY4r9+78JcOPmBSxn HiZy9Bc7jmmCLvUSAj2/QvKI3e8nwXkPaA0zL04KrRKdBs4fFlU+4SiLZfMDtzR6RPgv sS3eVll//l8VmuHXja9vdHSb18AP2NlMqGchyg90LvAhdMgP5p8o9LlU3x8XtkWUhsL8 TMiTGT72ZeGPAR+Sx3yImB7ra2wB1kpVO8HR2g5HXycXoJdnAuIp37OCagswAuVa9hP0 bIdw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=8J5KZm/A/NUV2Z5VjfFFzYs8dkhwVq0vSDOwv31cR9E=; b=E77MCudeMMisQszFd2Lo9PzS+k2grMJauxFiGgtX6kAqQk/2r4DLJNHlssepFaFC0q CgR28096OBrRgcIJTZDnE4vv5AJziYR2pAi/mtpT6ODNY9K0JPUUdPkYyy0sZGV1mVbW bFm+41fxdCz9yEwYCZw+1Nlk5kqz5eMVJdADt8Bnzm/zO0iVh55Z/oOWIXpG8r3P1jlL cRz3g7c9oxbf5hExh7rD28BQyYJkkgx4dXhaqwuHGHYb4G79Eng/FIVnBsZWGxM/2bdW NGi7rXnI0iEz3PyozwKLcWGkhsMRq8av85CD+2nUgK+GGSXS+1mNzbUNTyDKjCpE9SXW B29g== X-Gm-Message-State: AOAM533TMeQfnodw5Do3ibffbPi5g6RK896jb36kvkO1z7oEKkdJUOkM xNmCMVuGX66VIs9G+/H8PAmz8A== X-Google-Smtp-Source: ABdhPJyVf33UtphSktBI9ntFoL6cq9iL9BOs16hrhhAh7jmK09dSaYVS4/Qvpte4YqcVCT9AAoKH9g== X-Received: by 2002:a05:6638:329a:: with SMTP id f26mr1523318jav.28.1644605512481; Fri, 11 Feb 2022 10:51:52 -0800 (PST) Received: from pryzbyj.telsasoft (charmander.telsasoft.com. [50.244.222.1]) by smtp.gmail.com with ESMTPSA id l1sm13863719iln.29.2022.02.11.10.51.51 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 11 Feb 2022 10:51:51 -0800 (PST) Received: by pryzbyj.telsasoft (Postfix, from userid 1000) id 4AF56800A8D; Fri, 11 Feb 2022 12:51:50 -0600 (CST) Date: Fri, 11 Feb 2022 12:51:50 -0600 From: Justin Pryzby To: Alvaro Herrera Cc: pgsql-hackers@lists.postgresql.org, Simon Riggs , Tomas Vondra , Zhihong Yu , Daniel Westermann , Amit Langote , Japin Li , Erik Rijkers , Jaime Casanova Subject: Re: support for MERGE Message-ID: <20220211185149.GG31460@telsasoft.com> References: <20220128231948.GI23027@telsasoft.com> <202202111821.w3gqblvfp4pr@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <202202111821.w3gqblvfp4pr@alvherre.pgsql> User-Agent: Mutt/1.9.4 (2018-02-28) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, Feb 11, 2022 at 03:21:43PM -0300, Alvaro Herrera wrote: > On 2022-Jan-28, Justin Pryzby wrote: > > Have you looked at code coverage ? I have an experimental patch to add that to > > cirrus, and ran it with this patch; visible here: > > https://cirrus-ci.com/task/6362512059793408 > > Ah, thanks, this is useful. I think it is showing that the new code is > generally well covered, but there are some exceptions, particularly > ExecMergeMatched in some concurrent cases (TM_Deleted and > TM_SelfModified after table_tuple_lock -- those code pages have > user-facing errors but are not covered by any tests.) > > How does this work? I notice it is reporting for > src/bin/pg_upgrade/relfilenode.c, but that file is not changed by this > patch. Because I put your patch on top of some other branch with the CI coverage (and other stuff). It tries to only show files changed by the branch being checked: https://github.com/justinpryzby/postgres/commit/d668142040031915 But it has to figure out where the branch "starts". Which I did by looking at "git diff --cherry-pick origin..." Andres thinks that does the wrong thing if CI is run manually (not by CFBOT) for patches against backbranches. I'm not sure git diff --cherry-pick is widely known/used, but I think using that relative to master may be good enough. Ongoing discussion here. https://www.postgresql.org/message-id/20220203035827.GG23027%40telsasoft.com -- Justin