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.96) (envelope-from ) id 1wAlQf-000Ilh-31 for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Apr 2026 09:12:02 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wAlQc-004kfK-2S for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Apr 2026 09:11:59 +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.96) (envelope-from ) id 1wAlQc-004kfA-1E for pgsql-hackers@lists.postgresql.org; Thu, 09 Apr 2026 09:11:59 +0000 Received: from mail-lf1-x12d.google.com ([2a00:1450:4864:20::12d]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wAlQb-000000008hK-0Egu for pgsql-hackers@lists.postgresql.org; Thu, 09 Apr 2026 09:11:58 +0000 Received: by mail-lf1-x12d.google.com with SMTP id 2adb3069b0e04-5a3d2824e4bso853125e87.3 for ; Thu, 09 Apr 2026 02:11:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1775725914; cv=none; d=google.com; s=arc-20240605; b=C8ByKmpcncvXrlEFfuyWuzBDZ6MB+Wn0NqGdfVCHJRlxWtuyMfXzZzICAHvaQJb2bH pLLGmzP/qEJZPgdUCCF08lpmWrumvAAMpwKBxjUKmZHJdcQ2F1TEjT3aMRTj7VPC6LZw pjyD3MAN/0lw7LnoA1eFoTQRBCubK7XrtnmZ6lj7LFv30iYFo4kow9Jtd7pQ6GTympHt NF4a/2+Om1bnjynfiCPkogj8JsUVbee7b3n1c6oK8F/0HXY1+JNIoQ0jg1oTEnhO9c3s JNSxBPOhWBtbWPh3GsE6Bvjr2fu+sZ5EPmyLDkYOJXgeqMH+63f6W4NiBIQVaqvFLlFt yF0g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=IpnedBfhBndlGF/mPJAdDeTadzokKzDW5tf8QiG1Ck0=; fh=BcUNEbzQPiEnYL5ajU4ao00mpab7I7p0C3PEQrsg5Zc=; b=MKbheNwcqkw5zQBgpWQe+T9PKFk3rRN14Tw+g4xNTYXVgRH0qk1z7058SRvF65jN9r Pt8pW+1cOQy79Md8ye3NyWswP+t5NmMY6SZQw5jXliNoCN0R+D7LORl0FPPNsoQK4m1x hoDdsFgnokY9AGqLQM6xwxwmLzDl3yfTTSH+rYex0iH7wl6DfIw8rMRoxYwtCpCE9f6y 27q9xqVv/blGr8v0GNBbNF+M2KvmG+DsV94IsFAsoXUTxxHXdhKmzigfSFGrWNYQV87O E3WJMjGmx0785N/aVRPKE14qs+SWPelvm3UbNuQGuUrA67oS5Rg6GiBJ3QSxXAr7r35o r3UA==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1775725914; x=1776330714; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=IpnedBfhBndlGF/mPJAdDeTadzokKzDW5tf8QiG1Ck0=; b=SN1nBapTXnEIYwRCP81QarhzAfi6Cym4kUwFYzsyoDbmBNJEk0o/CV00BfGC2QBDhe AvmYeH1pdlj/A04wOrvmJCMPokfXoczgi1RJcguFFZjFWeiZGGA9O9z/cISt66H64hpT HW8EWuxRT1HPShgnXy2JYoCh65yvX3hMzwF650RMq0d3uCmFodTD47YkcpqyAjZIDvSv SP7aTFOrrnqBAvNF8Emb+jcL4guAwWU8fMb1YNTUKbY3ZPZSyyKtAs8+1AbvcqrDqEQD EZ5rgznM1UuqS24k2UWeMZh2mltl/YXX//RmGfx4QIuWHwwrWyUas3/4O+a1srenJ9BR MzOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775725914; x=1776330714; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=IpnedBfhBndlGF/mPJAdDeTadzokKzDW5tf8QiG1Ck0=; b=gaqA+j3hu5CIqpyt91eBp/KeTydov8RbuuWSyfG4aPyrDzCoqMJ1/33lL0wZzk2MKT RjJKABfFu5QvJbiwhSCTOsIarEjL+1d4RdmMqcSLnjYJlvsMTUPdEgZ/EycdxX7tl8gR uTA+TKyAoZhkERm3g9/JuV3/6spGQM4cMnm5JjgcB7JI9RYkeB0eXijJ6wzrmtpcmEpX rg4+U6vR4kwKD5HXIhwflXiegQANkpEpyLTsKOiloEZ7GpsZk8bFXdfDxCaR10/NTLA4 d3v4NC2Vwew4FzyPFqofevwsu+KW3YsAbk1wZ7regFO8fgTreeDd7wuV1IiL/+182/2v 71qA== X-Forwarded-Encrypted: i=1; AJvYcCVd1CH9bgf4UEVBfVQDsch7KpBF/LWn/6nm7/8lfjwS6zEt9mubnvsemElrJKUm1ec/uQ4E9GHHtRRsCWv/@lists.postgresql.org X-Gm-Message-State: AOJu0Ywd2KUVJVsKRMC1eI0FrkiA9W95pEskKCC/7z6D2mTX2bgycQpF fXDleZsCiI4+kw4IjnZ194D2FZcMxydsUROG0dAviTdNd1WMfLtzrWacutloGIHMbM4nfLCNhVC k9a6KSkTDgOM5k/DtHyv+KB6sMZ7TGfc= X-Gm-Gg: AeBDiev2b6/A/RSHmLZjlnHpn8dDB8Okl4xUUAv/RG+k2gXTBUQPrU2cThwcoc4sSOd FXD3WjE/VXCZzz+8pjc1/XKzQZkqknL4CeX9dSKi4VOaZYNbuOwZ3VNh3tGGuxlxkRa8Bjt0vfh v6kGELNcwepNm1sAWt5TDZG+wwxak2CNtF1vlFTS7FU77Cypm9AWHdZjiLR5J7O0CLlLvl0KVjj XqVyguqYXa44gUe1ZvBMxZ3viYadt9IS5w0RktK7aBtotYPASbAnsxDGa1hMPNaMLJHVyYHNRHI F7t5wuz8ef5g1lyI3wFgZBOl/gRsYkEqa9INTxJdD96DJ3JgcYmt8LvWxVoeZRZz9cyrvdXi8iC hO25zmyQVeRvoGLZ6p4k+yaLhi00= X-Received: by 2002:a05:6512:128a:b0:5a2:c0d7:cc0d with SMTP id 2adb3069b0e04-5a3e7a559f3mr942973e87.21.1775725913926; Thu, 09 Apr 2026 02:11:53 -0700 (PDT) MIME-Version: 1.0 References: <202604062213.cgo352cdsgsm@alvherre.pgsql> <4n4q3preb3lgyhpzstebhux7b2aojhsw7gik4ivaznyggiezrs@lrznutssxlh2> <9539.1775724194@localhost> In-Reply-To: <9539.1775724194@localhost> From: Mihail Nikalayeu Date: Thu, 9 Apr 2026 11:11:16 +0200 X-Gm-Features: AQROBzCaCUdl7i-FriypunVW4aMmhNA6FlhZdDr7dCLM60Xkrc4YjiNyrL6XUB8 Message-ID: Subject: Re: Adding REPACK [concurrently] To: Antonin Houska Cc: Amit Kapila , Andres Freund , Alvaro Herrera , Srinath Reddy Sadipiralla , Matthias van de Meent , Pg Hackers , Robert Treat Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hi! On Thu, Apr 9, 2026 at 10:43=E2=80=AFAM Antonin Houska wro= te: > This approach LGTM when it comes to concurrent DDLs. However, consider RE= PACK > holding ShareUpdateExclusiveLock (SUEL) and VACUUM (w/o VACOPT_SKIP_LOCKE= D) > waiting for the same lock. Once REPACK releases its SUEL, VACUUM gets it = and > processes the table, then REPACK finally gets AccessExclusiveLock (AEL) a= nd > finishes too. > One more thing we may prevent from sneaking into that hole is a > VACUUM. It will not break anything, but will be huge waste of time and > resources. I thought about that too, I think we may just add some kind of CheckTableNotInUse in VACUUM after getting the SUEL. Mikhail.