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 1v96qk-00A5ZB-IB for pgsql-docs@arkaria.postgresql.org; Wed, 15 Oct 2025 19:07:49 +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 1v96qg-007lOI-M1 for pgsql-docs@arkaria.postgresql.org; Wed, 15 Oct 2025 19:07:45 +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 1v96qg-007lOA-Er for pgsql-docs@lists.postgresql.org; Wed, 15 Oct 2025 19:07:45 +0000 Received: from mail-pl1-x629.google.com ([2607:f8b0:4864:20::629]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1v96qd-001wym-2o for pgsql-docs@lists.postgresql.org; Wed, 15 Oct 2025 19:07:44 +0000 Received: by mail-pl1-x629.google.com with SMTP id d9443c01a7336-28e8c5d64d8so64921695ad.1 for ; Wed, 15 Oct 2025 12:07:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1760555262; x=1761160062; darn=lists.postgresql.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=OPILb+efbF66/ftV8z+e926CU3bC7hSDJNYou7aW2Po=; b=iCXIBFi1n4IUIacAyjgu3zjFyu8aOa97SJ0DRS6w+ylx+B/yiH5S+471aNa157zjKB CVZ4isUiYzSWaj0TFStQUS7yI9cYK1OFdHny4Q1x0GOs+mGqeBWEnBux3Dkf4fHztD4i U3vSp8VPIlZjuuyeJQh/6fwjP9Lt3zLtfGIx0DeTrB1GKdMFevq5wPPCfp82jZ2VQUEJ y3H8RxWg4ihwgSJpDxic79iwmbU14hoXlKrrbKaosDQhEux25FbtZaNHuSYJShkxR7Dz hLJsTk2GjCMVU4O+Hf97ZdUwzhM2SEOivh8iKY7RxzcLxU6/vv5/+aeJg5fcadJqpotx uvog== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760555262; x=1761160062; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=OPILb+efbF66/ftV8z+e926CU3bC7hSDJNYou7aW2Po=; b=bv9lMjYqGpa/A7CG5/dthqfBj9MvEUhYdvR0dbgkzUf/wn+YuqQUdnFjl/OQ7cjiuR 9U+Qlx4fkr3VrzERZNYUTlgDnj6Ep/iy52FQPbWL0spd1GeBqhMsMspMYmPFw0RFAdro 2XcsQkHUM1SzzH9NR9l0phy01zcaMLXkRsjrzZ9pjlGveysbKTFE2Hhni9M8t0lSdtlc MFDZU+rv/y4SH5+EB8uSFcyDXqANwJQ7xk7Xo4tUji4A6nymyZY9lyscAN9JZ+Cpsj3C rNyYNZGsu7NQflKfizMw3QZ0pIqWrAJpgVDEnSG2jbdJ0VWXixG9XnWipejaZvzzZvMq 41dQ== X-Gm-Message-State: AOJu0Yxi863RAmJAtIq8bxyMREhrmyed6T/jR8G4/xSvII0TtC/3M1SV 7eLUgxV6/F6thuiNT+tNObigsqQ45/9FIT6bwTmJej2V50XiX8R5tGTkHMhNxg== X-Gm-Gg: ASbGncsMPUAdbCI0QCj9MH4TnsPL2kxbOPCLCAgSFuZpja+AoR8e5UF1xSFKBPDvMFU qMKRwRPdTAXV51//c5vgtoMHfb6p/XrpgPTlmRM+YxVO5iwR/NQ6GyexRjFZlDsjGM8mOdndB+v ws7pIAaeSkGRngdRTJkMFjc3KVbDRtpmNI+hlysnwXjZTW71TnEPmtJtH9SlO2Vws4duIHuZCmT PEu5B3ixuDqhWN4iOtODS/FoercfPQj5CNgyIzJc9mabV6BVaEIj7ahRMNFjA6GGODkz2gm/912 THI6whr2Bwqcgq5HVngaNtx3UC99sbHWcjRcI/P7WeEuSTvt/2XDk8NCjoe2nXRfGcpvdTuISOE 2QECI2vgcJNDMYyk32MgTQ5xFTKne87+S8AjupBSal9Jscm9XX0BF5g9pqZz/ndaMhQgXpc5J2y 29TQewZC6MnO5T1abS/+zddLkqE5aBWQVOeKEOAET7ikWLdKxNIKV5SivQOhuRjRQer4qiwh2ov hsO9uCFWkOOTQztDLK6+MhMRBoMd50gVO/6RIWP X-Google-Smtp-Source: AGHT+IHJ5Mv86L/LbExAkz9Kgrqd7yLlf3YWZykk9d8yW0agbz38Ald13IbO8jFzlNJculVong6ZqA== X-Received: by 2002:a17:903:240b:b0:278:daab:7940 with SMTP id d9443c01a7336-2902737946cmr381637855ad.17.1760555262489; Wed, 15 Oct 2025 12:07:42 -0700 (PDT) Received: from localhost.localdomain (2a06.4005.803e.0000.e41d.ad7a.86dc.2081.static6.kviknet.net. [2a06:4005:803e:0:e41d:ad7a:86dc:2081]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-29099a7b4a2sm3798125ad.67.2025.10.15.12.07.39 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 15 Oct 2025 12:07:41 -0700 (PDT) From: Alpha Shuro To: pgsql-docs@lists.postgresql.org Cc: Alpha Shuro Subject: [DOCS] document ShareLock behaviour when using a deferred unique index Date: Wed, 15 Oct 2025 21:07:27 +0200 Message-ID: <20251015190727.61226-1-alphashuro@gmail.com> X-Mailer: git-send-email 2.51.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk The logs that were printed by Postgres when enforcing deferred unique indexes were misleading. This change should make it easier to understand or investigate when users see the `waits for ShareLock` log entry --- doc/src/sgml/mvcc.sgml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/doc/src/sgml/mvcc.sgml b/doc/src/sgml/mvcc.sgml index 049ee75a4ba..4e36c59776a 100644 --- a/doc/src/sgml/mvcc.sgml +++ b/doc/src/sgml/mvcc.sgml @@ -1003,32 +1003,37 @@ ERROR: could not serialize access due to read/write dependencies among transact SHARE (ShareLock) Conflicts with the ROW EXCLUSIVE, SHARE UPDATE EXCLUSIVE, SHARE ROW EXCLUSIVE, EXCLUSIVE, and ACCESS EXCLUSIVE lock modes. This mode protects a table against concurrent data changes. Acquired by CREATE INDEX (without ). + + It is also acquired when enforcing a DEFERRED UNIQUE INDEX: + If a transaction detects another transaction that might cause + a potential conflict, it waits for the other transaction to complete, + by acquiring a ShareLock on the other transaction's transaction id. -- 2.51.0