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 1qn7md-009v4E-Q7 for pgsql-hackers@arkaria.postgresql.org; Mon, 02 Oct 2023 01:31: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 1qn7mb-00G12B-ED for pgsql-hackers@arkaria.postgresql.org; Mon, 02 Oct 2023 01:31:37 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qn7ma-00G11u-Ql for pgsql-hackers@lists.postgresql.org; Mon, 02 Oct 2023 01:31:37 +0000 Received: from mail-vs1-xe30.google.com ([2607:f8b0:4864:20::e30]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1qn7mU-007hJX-FJ for pgsql-hackers@postgresql.org; Mon, 02 Oct 2023 01:31:35 +0000 Received: by mail-vs1-xe30.google.com with SMTP id ada2fe7eead31-45289425da1so6320662137.1 for ; Sun, 01 Oct 2023 18:31:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leadboat.com; s=google; t=1696210289; x=1696815089; darn=postgresql.org; h=user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=I2X0CZFsA2pSOSLrS3yM+y8u5fLVJNeyGF4sRKscTMg=; b=R+pYZnx5n8CB91DbahDdlrnghVawnoEA053JKw9sWbTgR7pnhYdFkmeZZ8TFngqtEH 1uS4Oa7+QaQza2g2BxBtbnL329kiUrPVSlZ+8Uh/2IySaN5vML0oW/9ALxmA+PGMEa14 0iBN2JSyZhkDUl94/+OobKb6MUkleLnmINieE= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696210289; x=1696815089; h=user-agent:in-reply-to:content-transfer-encoding :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=I2X0CZFsA2pSOSLrS3yM+y8u5fLVJNeyGF4sRKscTMg=; b=o3gm+33BDd6E30bttm+mScb3Tsdq7eR9gRb3Y8zHwApuiB2wKSI+C2fAPvbbQmtH8c 2UpOG/rxcy/F1spsQ5ATGp9WjIMrN02mxGBH8vFIqgxdAu0xPCP4Fn66hOJ+A8QDTtPZ Ml/anLv77P4LyWN06YVJY+FtsUzrOw956W+0ImX3VIt0hZMaueho1vQKEmmZab56FqoM hKn4x/OZ9FLAuNvxnQxgZUyROEPLon/d6jZs3SRBdrZgyWpu6NOh81eaSPTQ7MipEGxH oN91ob0ps/7hadJn8iY3zYDCVRPKnBREpeh7chxX+VlmeW2hU0vS4WIX7Twc2Q7S5AiK X6/g== X-Gm-Message-State: AOJu0YzObc01avla+veYjF5YW5Mm23btA6id89W+A89x25K/Wj6BMJ+h S7y974/4qH+Un4K+I5BIudX/nQ== X-Google-Smtp-Source: AGHT+IFG1a6cgFsvHhKq2EN1UQR0DZK2xyrWQ6YRzkIE7eGOInFpk/w7IKaFK+Eos7Z01b3DioTVpA== X-Received: by 2002:a05:6102:2449:b0:452:9356:ab4e with SMTP id g9-20020a056102244900b004529356ab4emr4828921vss.25.1696210289450; Sun, 01 Oct 2023 18:31:29 -0700 (PDT) Received: from google.com ([2600:1702:a20:5750::2e]) by smtp.gmail.com with ESMTPSA id hd10-20020a05690c488a00b0056d51c39c1fsm5717956ywb.23.2023.10.01.18.31.28 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 01 Oct 2023 18:31:28 -0700 (PDT) Date: Sun, 1 Oct 2023 18:31:26 -0700 From: Noah Misch To: Michael Paquier Cc: Peter Geoghegan , Tom Lane , pgsql-hackers@postgresql.org Subject: Re: pgstatindex vs. !indisready Message-ID: <20231002013126.ad.nmisch@google.com> References: <20231001195309.a3@google.com> <1867127.1696192645@sss.pgh.pa.us> <20231001205830.2f.nmisch@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/2.2.12 (2023-09-09) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, Oct 02, 2023 at 09:24:33AM +0900, Michael Paquier wrote: > On Sun, Oct 01, 2023 at 04:20:42PM -0700, Peter Geoghegan wrote: > > On Sun, Oct 1, 2023 at 2:00 PM Noah Misch wrote: > >> [brin_desummarize_range brin_summarize_new_values brin_summarize_range > >> gin_clean_pending_list] currently succeed. I propose to make them emit a > >> DEBUG1 message and return early, like amcheck does, except on !indisready. > >> This would allow users to continue running them on all indexes of the > >> applicable access method. Doing these operations on an > >> indisready&&!indisvalid index is entirely reasonable, since they relate to > >> INSERT/UPDATE/DELETE operations. > > Hmm. Still slightly incorrect in some cases? Before being switched > to indisvalid, an index built concurrently may miss some tuples > deleted before the reference snapshot used to build the index was > taken. The !indisvalid index may be missing tuples, yes. In what way does that make one of those four operations incorrect?