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 1sEvCG-004tct-Ki for pgsql-hackers@arkaria.postgresql.org; Wed, 05 Jun 2024 18:17:18 +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 1sEvCF-00AWxv-Ps for pgsql-hackers@arkaria.postgresql.org; Wed, 05 Jun 2024 18:17:15 +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 1sEvCF-00AWxm-FW for pgsql-hackers@lists.postgresql.org; Wed, 05 Jun 2024 18:17:15 +0000 Received: from mail-yw1-x112d.google.com ([2607:f8b0:4864:20::112d]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1sEvCA-003cG1-VX for pgsql-hackers@postgresql.org; Wed, 05 Jun 2024 18:17:13 +0000 Received: by mail-yw1-x112d.google.com with SMTP id 00721157ae682-627e3368394so220257b3.2 for ; Wed, 05 Jun 2024 11:17:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=leadboat.com; s=google; t=1717611430; x=1718216230; darn=postgresql.org; h=user-agent:in-reply-to:content-disposition:mime-version:references :message-id:subject:cc:to:from:date:from:to:cc:subject:date :message-id:reply-to; bh=gJ93nOftuLWv3kCa02u1bwszym2XVxWM+Nahi1Cwrfo=; b=VQIwlPAp3HlSwvOSqcWO35L3Zxb/WYbMmnpo5RM1j8VmoQO5nDBkjMt4WyJKyfyxEa vt8NJAR/NsB68PcFa+OkC4n0Bjg3iAHzuXoe5ODBpWcV1ulkCp9qk2rHRr2V5bwyOYpC YQl8Q9KRFP6TILa8Mexnx535Bs+ipJLBY+Y6s= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717611430; x=1718216230; h=user-agent:in-reply-to: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=gJ93nOftuLWv3kCa02u1bwszym2XVxWM+Nahi1Cwrfo=; b=WPEI+Z6c13tcaKmeb75kdEvEI7TcwgbooosINCGnCIu4Vup5aEzCsOUhfOJ1/bz3XX IR6HTHE6Rr9934TlPdnku3qVLxRdW/yAc6IN3ZpTrBSqOSFKa8QtnVgVcgTuqmLT24eJ hn5rQTAEZXtyQ6qYZHq5RC1GZpuUK1Ew50okro674HoxpVn1ZZarw1Hh3AJfBYnsa2wY 5KmBw1nd/MU8V+rDCupY1n/eoed+yTUuFlMowpMGrXXl315eMQAzUioSM122MXaaU2ei 6/zVdYJkHTa29dH+aUztITIGyfUSmuIqnZx+y0A6NT7h5QRiJnUAfTBdgtfd4WYs71+/ c/mg== X-Gm-Message-State: AOJu0YyuRY3OQ5NjhsIr3liqNe6XKWVrYUjQAFYFWE9o4Jq75n8jP6Kj NoeU1TPJC/EqzoodM6KvEw1UIJQqj0pZyjJ0auX/Ebml3vHnz+X49PJHK3zNGC5VcjB/CYusNlq qUw== X-Google-Smtp-Source: AGHT+IEcIuFFt3SPBl0FOMcI+tgsRGnhTY7HoqYorhwAi7CtZkhtUYHm7rURc2aC+vOoolHkWfi1BA== X-Received: by 2002:a81:4154:0:b0:627:7ff0:fb51 with SMTP id 00721157ae682-62cbb4d6a33mr31811527b3.13.1717611429606; Wed, 05 Jun 2024 11:17:09 -0700 (PDT) Received: from google.com ([2600:1702:a20:5750::48]) by smtp.gmail.com with ESMTPSA id 00721157ae682-62c765b7ec1sm23321487b3.10.2024.06.05.11.17.08 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 05 Jun 2024 11:17:09 -0700 (PDT) Date: Wed, 5 Jun 2024 11:17:06 -0700 From: Noah Misch To: pgsql-hackers@postgresql.org Cc: Tom Lane , Smolkin Grigory Subject: Re: race condition in pg_class Message-ID: <20240605181706.fe.nmisch@google.com> References: <20231027044404.7e.nmisch@google.com> <20231027184832.9b.nmisch@google.com> <1596629.1698435146@sss.pgh.pa.us> <20231027214946.79.nmisch@google.com> <1617596.1698446455@sss.pgh.pa.us> <20231027232612.99.nmisch@google.com> <20231102030915.d3.nmisch@google.com> <20240512232923.aa.nmisch@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240512232923.aa.nmisch@google.com> 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 Sun, May 12, 2024 at 04:29:23PM -0700, Noah Misch wrote: > I'm attaching patches implementing the LockTuple() design. Starting 2024-06-10, I plan to push the first seven of the ten patches: inplace005-UNEXPECTEDPASS-tap-meson-v1.patch inplace010-tests-v1.patch inplace040-waitfuncs-v1.patch inplace050-tests-inj-v1.patch inplace060-nodeModifyTable-comments-v1.patch Those five just deal in tests, test infrastructure, and comments. inplace070-rel-locks-missing-v1.patch Main risk is new DDL deadlocks. inplace080-catcache-detoast-inplace-stale-v1.patch If it fails to fix the bug it targets, I expect it's a no-op rather than breaking things. I'll leave the last three of the ten needing review. Those three are beyond my skill to self-certify.