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 1r8qpv-00C5SE-Ly for pgsql-hackers@arkaria.postgresql.org; Thu, 30 Nov 2023 23:52:51 +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 1r8qov-0040b0-KW for pgsql-hackers@arkaria.postgresql.org; Thu, 30 Nov 2023 23:51:49 +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 1r8qov-0040ar-Az for pgsql-hackers@lists.postgresql.org; Thu, 30 Nov 2023 23:51:49 +0000 Received: from sss.pgh.pa.us ([68.162.161.243]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1r8qos-008BUP-Ve for pgsql-hackers@lists.postgresql.org; Thu, 30 Nov 2023 23:51:48 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.15.2/8.15.2) with ESMTP id 3AUNpZK4534498; Thu, 30 Nov 2023 18:51:35 -0500 From: Tom Lane To: Heikki Linnakangas cc: "Wirch, Eduard" , pgsql-hackers@lists.postgresql.org Subject: Re: PostgreSql: Canceled on conflict out to old pivot In-reply-to: <590f3e4d-a561-43aa-b4a6-ee72387af275@iki.fi> References: <4cf7082a-23d0-4e9a-87b8-9c336b55f6c5@iki.fi> <590f3e4d-a561-43aa-b4a6-ee72387af275@iki.fi> Comments: In-reply-to Heikki Linnakangas message dated "Fri, 01 Dec 2023 01:35:09 +0200" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <534496.1701388295.1@sss.pgh.pa.us> Date: Thu, 30 Nov 2023 18:51:35 -0500 Message-ID: <534497.1701388295@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Heikki Linnakangas writes: > On 30/11/2023 18:24, Wirch, Eduard wrote: >> My understanding of serializable isolation is that only transactions >> which can somehow affect each other can conflict. It should be clear >> for PostgreSql, that transactions belonging to different databases >> cannot affect each other. Why do they cause serializable conflicts? On what grounds do you assert that? Operations on shared catalogs are visible across databases. Admittedly they can't be written by ordinary DML, and I'm not sure that we make any promises about DDL writes honoring serializability. But I'm unwilling to add "optimizations" that assume that that will never happen. regards, tom lane