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 1wFBxs-004pV6-06 for pgsql-hackers@arkaria.postgresql.org; Tue, 21 Apr 2026 14:20:36 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wFBxp-009BLS-0U for pgsql-hackers@arkaria.postgresql.org; Tue, 21 Apr 2026 14:20:33 +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.96) (envelope-from ) id 1wFBxo-009BLJ-2E for pgsql-hackers@lists.postgresql.org; Tue, 21 Apr 2026 14:20:32 +0000 Received: from mail-vk1-xa32.google.com ([2607:f8b0:4864:20::a32]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wFBxl-00000002JBy-2Qqr for pgsql-hackers@lists.postgresql.org; Tue, 21 Apr 2026 14:20:32 +0000 Received: by mail-vk1-xa32.google.com with SMTP id 71dfb90a1353d-56739adfa1aso3112652e0c.0 for ; Tue, 21 Apr 2026 07:20:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dunslane-net.20251104.gappssmtp.com; s=20251104; t=1776781226; x=1777386026; darn=lists.postgresql.org; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :from:references:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=qUU8b8T8yuviwR56rpzhzqDSu6i5DuJdizxtjPwEvWg=; b=R1DruEivx+vbu+dGKcObCQZl2u5ZeJthkR63OT48/4J7DJYqvaD+VzL6g/4XXwUJJR nuFZY+vYPEg9R4Dxjo9aH48rKUNBY4Sxs2PHhZwQvlL9EMXgwnlALY4ybAtSyaFOH0ed Q/l3piFLCDtYIhe1O6DnFjHUrmRCcxnyCNnmCjjObcdsGn/PcdUj7dbZeqTE5vUvVizl QCnyrKxOUK8KndVisOITY3WyYG1gQmbNh8ttlINpwdIoZQg5ckvkpG9zLnJeUuP7tf/u Vxfxh1Y2UI/Szq+1g/j7fWnT4R+UivPhMd7A5zTMcF1sW2PJ00qWdzatEmNHyCKTvhWS RSlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776781226; x=1777386026; h=content-transfer-encoding:in-reply-to:autocrypt:content-language :from:references:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=qUU8b8T8yuviwR56rpzhzqDSu6i5DuJdizxtjPwEvWg=; b=gz3hHQ8xDWF9LdVtdrtN0fJ2UWD6LZKEjGcJFwYl9EN5UJL1cLucdlT2LXtDPgRtjU h1tkiRE8VZ+6KRmQ2YVLFHtw8CGJDvllK9z1lT51dLJnSwfep3d+z+y+7CspBZaMD04G IYQcY1473JwLaA+JVzukRpFs8NUbgacYaO3XD0gPEeLn+85/9m/OzNrl9BjmVwGZtF23 09QTQDiOdxkoMAjXljbRd7ZnHISjWO8obcSg9+jsMOKcpoHDAMzgiR4D+xi1oohU+iS1 y0DBk7ALk/lwDdeuFAd1JMk42E93hO1u78xxOwj+y1NiDYxakGcmwOF5Qo/c3dZkdfNp cYrQ== X-Forwarded-Encrypted: i=1; AFNElJ9zSYU14u1E+oK4xtK5IPwsbFOdWs8sYGufytsNCdyeXEZmf46sTomm3S5xnv0SuEbMFefQm+ySg4Tc5B/5@lists.postgresql.org X-Gm-Message-State: AOJu0YxAJvkTTtWGid7Ukr3PwAsxkotHmt6+H1bJUyW8LHN3HBe+EEps zKvItG7cRP//Dzca4+qiOkOKh5SMnGj4SucLtyMSd87IiG1FpBee1DU50sTZ+KVSmwg= X-Gm-Gg: AeBDiesjeWibn0e7yMGf4v6aCc1Nfg6ffrmVS3RSD5HOJH8i5XFkgUlyksCATOElToG m1d3e8gS+5F6nj+Wqn11WwW8bmXuB8H4SgOVq+FWxpSBM1VNJHyL6TA671dRUc5FmrmeW6SFXLk /meLpsa94L2mFeuGqQkH+mPfV5xGgmJts2XR9pOhTMCAFESwrNJyNuSk++CQRzGKk0/o2my6o+/ 6VoO3mQgosO12U6ZLl3a1DwrNMgALHc1CVkOOrZanG7CjanyauF21Q6wBpTIXx6o7ABJVF39TpH WZzJWbNWU5pC46LRkws6S1uJwZVBkcKpU0/iFW82FnxNZE0YI0lBSAQsk9eKnnL8/Co6gRxWdiK ZtIQnkqSy1HFZIXkffN0BLwbi6mkTEeKD4KE75X3K2H9lnzPmOFzHnwxtf4HB+yUfETMWOm/Y8c R/t2HPvlcyu8qYjfcuQUr0atrHjSNSARXWrMXqJzxW X-Received: by 2002:a05:6122:45a0:b0:56d:8927:12df with SMTP id 71dfb90a1353d-56fa59b6466mr9501251e0c.9.1776781225991; Tue, 21 Apr 2026 07:20:25 -0700 (PDT) Received: from ?IPV6:2605:a601:a6b0:500::1cb? ([2605:a601:a6b0:500::1cb]) by smtp.googlemail.com with ESMTPSA id 71dfb90a1353d-56fa92f22a4sm8304714e0c.12.2026.04.21.07.20.24 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 21 Apr 2026 07:20:24 -0700 (PDT) Message-ID: <85af1521-0909-42ea-a0f9-f755919c6cbe@dunslane.net> Date: Tue, 21 Apr 2026 10:20:22 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Non-robust plpgsql_trap test To: Tom Lane , pgsql-hackers@lists.postgresql.org References: <557992.1776779694@sss.pgh.pa.us> From: Andrew Dunstan Content-Language: en-US Autocrypt: addr=andrew@dunslane.net; keydata= xsBNBE7KWFkBCAClridxur2AIc7eW2AR7izbfp3EnNefie2HbLF0izW5Ik5UjX2HBXBx4syI gY6b0ugohXrr274+baoAlvSbq6cAoQuEVrk5IZFzt20b1Xkx65FwGSEj526yiKLocqkJceSq Xr9xcA5SGY+FZv441chh5SU92v4q6z+6LPpoHOh97ptAVXZYNTtU0LevyvD5lja0TzbvJm6C eFXitJfnm1pLEr0DGJCR/iUOl/N62Kh4855zZC7NHIjQHPOvV5Stz/l5ilDhvGVk+xkXFPys SjZoUr1rXhYLpiyi5sR0X9FHXT0KnGuz1F5ERO7ZTLSSQ6fJwPj6gOk9K+vvoKvoeql5ABEB AAHNJEFuZHJldyBEdW5zdGFuIDxhbmRyZXdAZHVuc2xhbmUubmV0PsLAlwQTAQgAQQIbAwIX gAIZAQULCQgHAwUVCgkICwUWAgMBAAIeBRYhBOQ+WEYd/Hy/RGkVpZn6f8tZ/DuBBQJoGNGd BQkdEO8nAAoJEJn6f8tZ/DuBq74H/jkTR4Zi3stbw+xC7v2u3QozssK7MYPL2AsVfh7OealS h182fiWXpfvmmAB7WUHbhk9GC2RAOnHI/2d2jgKaMLAHsGYOT0YopTVIwRY43fCw/mK67yxc wmDcX+zyKfLaivNbf5A7QPLNwda98bEAMSJ8Sn652Uc6cA8t3uKGsVzbRBQOoYzjgvBCfSrE 9ql3PDNg0l4BfAqabd2f70ZUm9VAMEPrgv/v2xI7M2XiL4g5BVmqLCOwxLM8RMCotCuoweUr VO43DeBCIDwLxotMJKvGWDjBzQYlU1NPUAtNcz/gN9ITUe1VUGjyvGj4u1lxBOcQQUw7l1+T 5moZ4iZxXzvOwE0ETspYWQEIANGc4zQULOxhbqO2dyD51YhqCNRmm9oKWaqf+wmW4tpDe/VV cxAnNizd4LWCHfzpb5cHAtGkOPePMfzWVf6nvdF7d3eglbtf59+zG7O7llV0xSSoFiieQBsr GvqDInXYX/4mRRXMtyhM353/tixC9RWLs1oofyYmCPPXXY7h9R7en3B8BoVrRFcdzlIY/NFN hFGW/9dkEiGjgna2Rk6e15kln4ZvFBWUg23p93w/pqXcxY6+k/8TEk+C4R+M6w7o2PLGOjdZ +kPiUcw5H85zf/yZJwQXzisXaNduwWB6Vads9YC9dj6kPR1c4VGRqAaYL++LAEOqrlvm2Tvq QqZRtnEAEQEAAcLAfAQYAQgAJgIbDBYhBOQ+WEYd/Hy/RGkVpZn6f8tZ/DuBBQJoGNI2BQkd EODdAAoJEJn6f8tZ/DuBfw0IAKTsfD40teP/pp+bsLLMSxPXUYrrprTj7WFB5v61p6dkpSr/ qXmMlyahdxQFaPmfVgVirB1Vk/kHiWNnnGjfUV9nB2Zg9LI0Xb9/ts3LsUiRWXzG3tkMY6XL vsVOxW4XFRND9l2q+WW93aZ1DZl+fqWfYgMvsusFRhmGFOKTRfKPta2Pkv+AhA24N4+PrR5p bU4k2MO8PAGiK8eaYKGFG1bHKuAvoDoF7WXJ3FHxuWqLnKEt4dfOLm5pAe3zq1Lt6q8azT9i QWGpSAK5vQUWQHBHpiDjdPeqKZ6HiAXIIKfSmb+jrvXBqoP+D6/K7rUjG2aXiRtTIAXms9sm VRu7cmw= In-Reply-To: <557992.1776779694@sss.pgh.pa.us> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 2026-04-21 Tu 9:54 AM, Tom Lane wrote: > I've noticed a few buildfarm failures similar to [1]: > > # diff -U3 /repos/client-code-REL_19_1/HEAD/pgsql.build/src/pl/plpgsql/src/expected/plpgsql_trap.out /repos/client-code-REL_19_1/HEAD/pgsql.build/src/pl/plpgsql/src/results/plpgsql_trap.out > # --- /repos/client-code-REL_19_1/HEAD/pgsql.build/src/pl/plpgsql/src/expected/plpgsql_trap.out 2026-04-21 04:22:01.030204342 -0300 > # +++ /repos/client-code-REL_19_1/HEAD/pgsql.build/src/pl/plpgsql/src/results/plpgsql_trap.out 2026-04-21 04:29:54.795187855 -0300 > # @@ -155,7 +155,7 @@ > # begin; > # set statement_timeout to 1000; > # select trap_timeout(); > # -NOTICE: nyeah nyeah, can't stop me > # +NOTICE: caught others? > # ERROR: end of function > # CONTEXT: PL/pgSQL function trap_timeout() line 15 at RAISE > # rollback; > not ok 11 - plpgsql_trap 502 ms > > which is coming from unexpected behavior of this bit of plpgsql > code: > > begin > -- we assume this will take longer than 1 second: > select count(*) into x from generate_series(1, 1_000_000_000_000); > exception > when others then > raise notice 'caught others?'; > when query_canceled then > raise notice 'nyeah nyeah, can''t stop me'; > end; > > The light bulb went on when I noticed a nearby failure from the same > machine that was clearly traceable to out-of-disk-space. What > happened here, I have no doubt, was that the "from generate_series" > bit tried to make a large temporary file, ran out of space, and threw > an appropriate error, causing us to take the "wrong" exception > handler. > > Proposal: > > 1. Replace that query with something not so resource-intensive. > I'm not really sure why we didn't just use "perform pg_sleep(10)". > Maybe it didn't exist or didn't reliably wait 10 seconds at the > time, but it does now. > > 2. Adjust the "when others" handler to report the actual error, > to make this sort of thing easier to debug next time. > > regards, tom lane > > [1] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=caiman&dt=2026-04-21%2007%3A21%3A57 Sounds good. cheers andrew -- Andrew Dunstan EDB: https://www.enterprisedb.com