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 1w9w6x-001uFm-36 for pgsql-hackers@arkaria.postgresql.org; Tue, 07 Apr 2026 02:24:15 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w9w6v-00DWft-0O for pgsql-hackers@arkaria.postgresql.org; Tue, 07 Apr 2026 02:24:13 +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 1w9w6u-00DWfi-2e for pgsql-hackers@lists.postgresql.org; Tue, 07 Apr 2026 02:24:13 +0000 Received: from mail-ej1-x62e.google.com ([2a00:1450:4864:20::62e]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w9w6t-00000000xH0-1kUP for pgsql-hackers@postgresql.org; Tue, 07 Apr 2026 02:24:12 +0000 Received: by mail-ej1-x62e.google.com with SMTP id a640c23a62f3a-b93698bb57aso27704666b.0 for ; Mon, 06 Apr 2026 19:24:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1775528650; cv=none; d=google.com; s=arc-20240605; b=E9IFtLYUOAU307OqtoIPyzfjgRso6W5qae6R941IUY5pQJug5aIOFENDXKapBejyck Bn1HmjCfnB7/hZMmgPnh7a70KVXfyD35smMvCR2aiCOiU31fafJ7+AhZOsMRzrJU1Pjc zx4I0SVnbioPpSQxuhe+fRalNwkcDCpOqpj5HJpiwAyKToxjNzheQqGYXbRlPs286gtQ 4lc0vHKWRyza3x+ZhEpcbo14bnKigCSCTchSXMBt5sn22sZGoKexLC818WfDTPrj8Cui 4gthDm3h0cPozFigy+k6EW55i+ff7P8XJdvOSLwAK62n6Vj/SagT18bgkJIWRTorZZFy WrRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:mime-version:dkim-signature; bh=g/jMgkJOwVFyIwW7VE47TXkHCdurZ+lfQFyS0CS5sLM=; fh=GbP8ShXkj89DMHyt8xWHfj+vYw9KwRi/H+sKjZjFvHc=; b=V8j28iPc+RL8tBKJdhu5FJT1fDDs6G+a9cnPl7hMJl+bh+OHlfuQZekctMqFFL++nQ ydQOgTLKSD5Q2+4G2V2b6MEayNADQ7Kp3hlYZgZH3S551VjtpODekMLM1DTMViAmUbjg X2wY0tc12u86mLh1vsjX0hHRxcHONkv09wy/0UUURe/7UNw1vtfzVxpT9kakOrjD/8wa DfpALEgDq8uclOluKg9RrXau4dY7qPh7gV7hvxBV+E3vqjuPNKOSUVzu/uvym38SVgyC 8+FNNOqdZ79I4nJVH8dXCb+24D6naLdUNN/iTeNX9Exry7E75mBD9jQ7ewNLkYgeqXR3 HhyA==; darn=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=1775528650; x=1776133450; darn=postgresql.org; h=cc:to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=g/jMgkJOwVFyIwW7VE47TXkHCdurZ+lfQFyS0CS5sLM=; b=r/fgaGrf0clq2UAkilQCMpw+RRqbyfG/FIG2hKtFyt2W7VS1U7dOrsl2/OqYbbNg+4 4uQiGJA85aUgAXHNhX70ASOC8J0yvGXz/+vip2eg8CaOT6r2V4TJKGp+lciu1SZZ+e5I pF+8MIykRnEXJrFbfmXxp1T/eds2YCwxuv/NNtWeOeD76zCoe+DqA4le4CI6ao2/nLVB WHYDQoJ5XXIOSs6VX/NZgw4R9OwZa6NNXtbeAqLeJ/C6CAjitao3oofVdkPY8kXzMnFJ w1Fme0oNwh/h5rz2glgyzEkdLIIvLsf6220TaydQrZliVh45cwVRQuWoXHDWEXJcjCvg 4hcA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775528650; x=1776133450; h=cc:to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=g/jMgkJOwVFyIwW7VE47TXkHCdurZ+lfQFyS0CS5sLM=; b=VeuUba3k7BUuFtPy4UXogRkeI/Domxmkf+jRmCj7KlZK0B74uiXX/lSQmNjFel612y Yq3y8ijqyI/5z2pGO3NiDunI4IovU0m5nYgyS0wzKEl8C4xotUNQ6pu03bVRUXYMgru/ pEHTyEpRWsQa0d0YX7sszqtozkDPwCp/7GwyCBVTBslLMbkSJkfrKlVafRbWFTFZPF4m z4welMX3FYnJSYUlDUe/rayB+mGC7OF3cI8n0bQPxhFXA3KU1IaGgRXBbxsyvnYNFyhV dGYjjefo7XCkpBvvLbP0LPhWW4QFHQE9nGJECl7C/g0n7YmkrYyENShaC/CVX7TzwX9D qwAA== X-Gm-Message-State: AOJu0YykRlvYMBhlYvQ/b5T7Z3+jykB00fEYeyyq2cI/1Pf8x6zjYKwb yeGDfXf401GHkp9BMwj31Z+fh5Eo2VeyefiBCzdG+UN2Mg+mpn05XU9nnQ9njMd/gvNMya/4uzP IakwPG+uLNULwG51LkIq+uHcAKkXRNVJ5my5K X-Gm-Gg: AeBDiesgtqv/uGbjXZdpaIorkgec9t5lM4e2mUOCAIfqGlJO+9VVHxWaR2/mZWBqwMU PQuRxXO25euycjlKUI8BtrfAiZuqJtBoird1oP9OeA7Y4myD4ANYbPg1ZtUjXhT/SfCh+GtewBo w/GAZr5MPmzeNBCOOZFg8Ksz8S+iQQLPBR30ni/EbwUTTDUjru1eutPhFze0fk2tl7CG7UDrh1M jDCeXY3NFgxQfAO3SUuPgGMMgduQOw0skUGy3dNv0ls9dGdBY2zn/jV6NwEA/m/Q0aJ0LcQk+c8 GvP7+g== X-Received: by 2002:a17:906:6a0b:b0:b98:14e:32c0 with SMTP id a640c23a62f3a-b9c46e585d0mr784790266b.14.1775528649199; Mon, 06 Apr 2026 19:24:09 -0700 (PDT) MIME-Version: 1.0 From: Sami Imseih Date: Mon, 6 Apr 2026 21:23:57 -0500 X-Gm-Features: AQROBzACcEX_sbnIzd0nGfzxD2Luh0HocGT-pzx0YySJaPVwO57HRXXIiHOWUFA Message-ID: Subject: test_autovacuum/001_parallel_autovacuum is broken To: pgsql-hackers Cc: Masahiko Sawada , Daniil Davydov <3danissimo@gmail.com> Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hi, I noticed that the test introduced in parallel autovacuum in 1ff3180ca01 was very slow, but eventually succeeded. I tracked it down to the point in the test that is waiting for "parallel autovacuum worker updated cost params". This portion of the test that is waiting for the cost params to propagate to the workers is getting stuck on wait_for_autovacuum_complete(). At the time it's stuck the injection point from the previous test autovacuum-start-parallel-vacuum is still active on template1 tables. datname | query | wait_event -----------+-----------------------------------------------------------+---------------------------------- postgres | select datname, query, wait_event from pg_stat_activity ; | template1 | autovacuum: VACUUM ANALYZE pg_catalog.pg_attribute | autovacuum-start-parallel-vacuum | | AutovacuumMain | | LogicalLauncherMain | | IoWorkerMain | | IoWorkerMain | | IoWorkerMain | | CheckpointerMain | | BgwriterMain | | WalWriterMain (10 rows) The poll_query_until eventually just times out, but this does not cause the test to fail. # test succeeded ----------------------------------- stderr ----------------------------------- # poll_query_until timed out executing this query: # # SELECT autovacuum_count > 1 FROM pg_stat_user_tables WHERE relname = 'test_autovac' # # expecting this output: # t # last actual query output: # f # with stderr: ================ This issue only occurs when I run all tests and not when I run test_autovacuum in isolation. It makes sense the issue only occurs for all tests only since autovacuum running runs for template1 and other tables unrelated to the test. I run all the tests ( equivelant of check-wold) with: ``` meson test -q --print-errorlogs ``` I think we can remove the second wait_for_autovacuum_complete() call in the test, as all we really need is to wait_for_log to guarantee the cost parameters were updated. No need to wait for the autovacuum to complete. --- a/src/test/modules/test_autovacuum/t/001_parallel_autovacuum.pl +++ b/src/test/modules/test_autovacuum/t/001_parallel_autovacuum.pl @@ -177,8 +177,6 @@ $node->wait_for_log( qr/parallel autovacuum worker updated cost params: cost_limit=500, cost_delay=5, cost_page_miss=10, cost_page_dirty=10, cost_page_hit=10/, $log_offset); -wait_for_autovacuum_complete($node, $av_count); - # Cleanup $node->safe_psql( 'postgres', qq{ Regards, -- Sami Imseih Amazon Web Services (AWS)