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.98.2) (envelope-from ) id 1xBdzm-00000003J8Y-4BZ9 for pgsql-hackers@arkaria.postgresql.org; Tue, 29 Sep 2026 20:00:11 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.98.2) (envelope-from ) id 1xBdzk-0000000GJ0t-0H9j for pgsql-hackers@arkaria.postgresql.org; Tue, 29 Sep 2026 20:00:08 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1xBdzj-0000000GJ0l-2sbu for pgsql-hackers@lists.postgresql.org; Tue, 29 Sep 2026 20:00:07 +0000 Received: from mail-wm2-x10.google.com ([2a00:1450:4864:31::10]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1xBdzg-00000001yuu-34vL for pgsql-hackers@lists.postgresql.org; Tue, 29 Sep 2026 20:00:06 +0000 Received: by mail-wm2-x10.google.com with SMTP id 5b1f17b1804b1-49ce364488dso4320095e9.0 for ; Tue, 29 Sep 2026 13:00:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1790712003; x=1791316803; darn=lists.postgresql.org; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:content-type:from:to:cc :subject:date:message-id:reply-to:content-type; bh=JKGVYTyVONypFmRMZ20wpDohGbGpXRhgoog8KWGoLLU=; b=elFfSDrv/DSUDnytmg5xZeRuug2ZiMIDAGELQGNAxVKRiqriPlSRbxtBmkcMkFJ5vQ lWTU3vep7e9JZw5MXef8Xd+jDwozwGGtyTWn4j+DuQEnK5j4laQvEmtf+PEdARW8b77F flatcjHKTdE2M1letfgCx86lhld3zbJS2A+SXaay1cn5lpGcqEuCZud5Ff7kWSu+JscN Cjt12BYsohQjxlIITD1T1rB88xmrMm9V30axMmTo4GGhTmFqFb3Q7EJxrNH2Xm+rkuVz Epe36slDq7xMZFRCE00PeDZSmE/M4fRGJ/+fnA984yrv45qhaFtRoi/ZwEG9LjvRYr68 DKZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1790712003; x=1791316803; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:content-type:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=JKGVYTyVONypFmRMZ20wpDohGbGpXRhgoog8KWGoLLU=; b=D+IJ/1s321xmowOAkDrGKJFnhSY1/bGvzuRBaQ9QhmLqirPeYIT4kRMosv4ikJCrAM TwUy2krmFZAo7NhNhM3DpVo+YBcoSvg08jeEarGQoWiLoi0RqKe501EdZkbqf1p2+E46 sfh/rC90qLBw//xNN/ULVipN0mVupxn99EApE+7cAdiMlRCbLHGYoy3xmp0O8iLeX/Vx 9p2UV/Ug89iRrpS59A2nMCJfGp3wt7c6KGv8ckeDQ++HfMGD9iJeA36BWVAKdhLkpi16 NXO6E82nHibh1qBnsgF1Cq2BJYgfamf7obU7UO0kH3lL3mQJ+uHk+kmSI7T/9PZfsQ0Z /hOA== X-Forwarded-Encrypted: i=1; AKwUvBys7g1cf8t7QZ0MtqTLUeA1SQDwBbN81BkEK1MQ/YDSoQ73RbcpdtnT7JKZ+sgCs8Ev0QhI9iaH2n9DhXZw@lists.postgresql.org X-Gm-Message-State: AFuF++kSWW1TICCHCNANFAGcFZLaH9fCFat4jbfvbA/OkSvhLpPVQAuD 2AEkTPNqbRdumd/p6JqdR5RAKuy3VRxNgNU1qw5j9gkU3uB/IVnLixko X-Gm-Gg: AYBFou1X0aFupHzALePfQUgZTzjD5PmpZnhSlJMlRsTXc51qv4ngj5Rkr9oF2hXx32G 7SmrmN2zzR5S16mAQ82xZe5fPLSVzt07yypsPF2qeBHoG5OOnCI3ab3/EXypdjtpIkfoPhJan4i LhdXXEsF/j/BiUfrf0LVOQ9CpJiFyX9i6R4QtCE4I5GAtWqmWC1G+4VW+n2f8+CxSKMgYNtPu9Y PDRwrb6H0nZpVfk9e3ZjMd4oK4Ivl2g5YDIq8w7vfPb4ZmQec8UzKb+Hvc6P6XJljMYzo7+OQMy aAyl+jUmy0n3xoDbE8RIWIcBQuWGZedapBLtXkxMKejSMtZTznUg4A6ImplPWok5ksqMATwxiwB 2BPQx4FkStfapUxCOxprjBkmmVr9gvbtZNkvfpgRVNMTAMgJY52MYeKwAUSfjfXei4P8ue6E5aK bUjRHrfIG5kfZPJ1P7FG+2SxileMQOBRKgGxylGuQxTanGtxg8oHQewKLPaGEKnBISZlS0ZFryv w== X-Received: by 2002:a05:600c:c04b:10b0:49e:65f2:db64 with SMTP id 5b1f17b1804b1-4a01502a228mr2103815e9.5.1790712001954; Tue, 29 Sep 2026 13:00:01 -0700 (PDT) Received: from [192.168.0.50] ([89.149.68.133]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-4a00cf9dfdbsm152285265e9.1.2026.09.29.13.00.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 29 Sep 2026 13:00:01 -0700 (PDT) Content-Type: multipart/alternative; boundary="------------Rf0sv0TrkcBfklaZgcGg2Q04" Message-ID: Date: Tue, 29 Sep 2026 23:00:00 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: REPACK (CONCURRENTLY) can crash a logical decoding session To: Masahiko Sawada , =?UTF-8?Q?=C3=81lvaro_Herrera?= Cc: "Zhijie Hou (Fujitsu)" , Thom Brown , PostgreSQL Hackers , Antonin Houska References: Content-Language: en-US From: Alexander Lakhin In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------Rf0sv0TrkcBfklaZgcGg2Q04 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Hello Sawada-san, 11.09.2026 20:56, Masahiko Sawada wrote: >> No objections here -- they look good to me too. The isolation spec >> addition is great, thanks. > Thank you for looking at the patches! Pushed. A recent failure of repack_decode.spec emitted by skink [1]: # diff -U3 /home/bf/bf-build/skink-master/HEAD/pgsql/src/test/modules/injection_points/expected/repack_decode.out /home/bf/bf-build/skink-master/HEAD/pgsql.build/testrun/injection_points/isolation/results/repack_decode.out # --- /home/bf/bf-build/skink-master/HEAD/pgsql/src/test/modules/injection_points/expected/repack_decode.out 2026-09-25 23:32:42.088355239 +0200 # +++ /home/bf/bf-build/skink-master/HEAD/pgsql.build/testrun/injection_points/isolation/results/repack_decode.out 2026-09-29 18:01:56.818281263 +0200 # @@ -26,7 +26,7 @@ # #  count #  ----- # -    8 # +   12 #  (1 row) # #  injection_points_detach # 1 of 16 tests failed. apparently shows that the test is not immune to autovacuum. I can reproduce such failures locally with: --- a/src/test/modules/injection_points/Makefile +++ b/src/test/modules/injection_points/Makefile @@ -21,3 +21,3 @@ ISOLATION = basic \             repack_commit_race \ -           repack_decode \ +           $(shell printf 'repack_decode %.0s' `seq 100`) \             repack_missingval \ and echo "autovacuum_naptime = 1" >/tmp/temp.config TEMP_CONFIG=/tmp/temp.config make -s check -C src/test/modules/injection_points/ ... ok 9         - repack_decode                             272 ms # diff -U3 .../src/test/modules/injection_points/expected/repack_decode.out .../src/test/modules/injection_points/output_iso/results/repack_decode.out # --- .../src/test/modules/injection_points/expected/repack_decode.out 2026-09-29 14:51:55.810851901 -0400 # +++ .../src/test/modules/injection_points/output_iso/results/repack_decode.out 2026-09-29 15:09:00.871263055 -0400 # @@ -26,7 +26,7 @@ # #  count #  ----- # -    8 # +   12 #  (1 row) # #  injection_points_detach not ok 10    - repack_decode                             302 ms ... # 26 of 115 tests failed. [1] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=skink&dt=2026-09-29%2014%3A01%3A15 Best regards, Alexander --------------Rf0sv0TrkcBfklaZgcGg2Q04 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit
Hello Sawada-san,

11.09.2026 20:56, Masahiko Sawada wrote:
No objections here -- they look good to me too.  The isolation spec
addition is great, thanks.
Thank you for looking at the patches! Pushed.

A recent failure of repack_decode.spec emitted by skink [1]:
# diff -U3 /home/bf/bf-build/skink-master/HEAD/pgsql/src/test/modules/injection_points/expected/repack_decode.out /home/bf/bf-build/skink-master/HEAD/pgsql.build/testrun/injection_points/isolation/results/repack_decode.out
# --- /home/bf/bf-build/skink-master/HEAD/pgsql/src/test/modules/injection_points/expected/repack_decode.out    2026-09-25 23:32:42.088355239 +0200
# +++ /home/bf/bf-build/skink-master/HEAD/pgsql.build/testrun/injection_points/isolation/results/repack_decode.out    2026-09-29 18:01:56.818281263 +0200
# @@ -26,7 +26,7 @@
#  
#  count
#  -----
# -    8
# +   12
#  (1 row)
#  
#  injection_points_detach
# 1 of 16 tests failed.

apparently shows that the test is not immune to autovacuum.

I can reproduce such failures locally with:
--- a/src/test/modules/injection_points/Makefile
+++ b/src/test/modules/injection_points/Makefile
@@ -21,3 +21,3 @@ ISOLATION = basic \
            repack_commit_race \
-           repack_decode \
+           $(shell printf 'repack_decode %.0s' `seq 100`) \
            repack_missingval \

and
echo "autovacuum_naptime = 1" >/tmp/temp.config
TEMP_CONFIG=/tmp/temp.config make -s check -C src/test/modules/injection_points/
...
ok 9         - repack_decode                             272 ms
# diff -U3 .../src/test/modules/injection_points/expected/repack_decode.out .../src/test/modules/injection_points/output_iso/results/repack_decode.out
# --- .../src/test/modules/injection_points/expected/repack_decode.out    2026-09-29 14:51:55.810851901 -0400
# +++ .../src/test/modules/injection_points/output_iso/results/repack_decode.out  2026-09-29 15:09:00.871263055 -0400
# @@ -26,7 +26,7 @@
#  
#  count
#  -----
# -    8
# +   12
#  (1 row)
#  
#  injection_points_detach
not ok 10    - repack_decode                             302 ms
...
# 26 of 115 tests failed.

[1] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=skink&dt=2026-09-29%2014%3A01%3A15

Best regards,
Alexander
--------------Rf0sv0TrkcBfklaZgcGg2Q04--