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 1w7Z7H-005Rsk-0G for pgsql-hackers@arkaria.postgresql.org; Tue, 31 Mar 2026 13:26:47 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w7Z7F-00ANSN-0k for pgsql-hackers@arkaria.postgresql.org; Tue, 31 Mar 2026 13:26: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.96) (envelope-from <3danissimo@gmail.com>) id 1w7Z7E-00ANSE-2d for pgsql-hackers@lists.postgresql.org; Tue, 31 Mar 2026 13:26:45 +0000 Received: from mail-yx1-xb12d.google.com ([2607:f8b0:4864:20::b12d]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from <3danissimo@gmail.com>) id 1w7Z7D-00000001yRT-244E for pgsql-hackers@lists.postgresql.org; Tue, 31 Mar 2026 13:26:44 +0000 Received: by mail-yx1-xb12d.google.com with SMTP id 956f58d0204a3-6501cbb52e5so4287857d50.2 for ; Tue, 31 Mar 2026 06:26:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774963603; cv=none; d=google.com; s=arc-20240605; b=Gz5dkQjYg3dXHb+PDSCCaaiKm6Flfu51Is2Z4oMqjrnaWKZKoM10MnHL9+hOEcNHoR 7bXhdTLx4RijtBvdwT/TW9mTsBgjfuCf//fCLf90kBD4UtjbN05ge9U//Mpz4qjcFBCs dlzK5TByWcVGHE+ysFfiJAKPdI3AFlE2/pQZqx3gM8OhQp5yyHlw2rrr5WiGJhEYWVyY wOyYXdbbVFkmuZaW2ZrGdZaq78QOHP8wYfSIlh2eCq4lm924CyYxCrW1VG/61jLlO27A 9uOMXaHU5IITqupJTnsmpyl9mjuSZNBv5o0HDmQpchXM5OwR8Q7qyh5uQcf2c24vYlye BvTw== 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=KCoTarRx1ryrN41uofrKBEd5fkW8fcmI+Btf80Qkazk=; fh=9fjCJbFum1trVaEh5xqXwPALVwf8Ahgahyuyg/dVybc=; b=aTbI+DZ6S0e6PfFlotP1WZoBRCFDQx+BLgWf0u8BNqrN54HjHEj9Z0yBv7W1PT1+Uh qRRn65xsK6VcuCd/sesjrhpqQW3Z/HwcpZ7tOXONw032Xyxd7pGU9dpjBUeMS6BXbenC +9BPPUK04q0E9scl2jEL9crfAYor5bZIzXXroU83TlRz2bc+EbrzWBlRaFj2TZrAAqg+ WTBmbcbwUP7pcGAYfeLC4COrZG8pQ/eeQ6R+i/xjvutXSKQJI8yXhO+2LG4PSvg0s8j4 a4buUxzAfCz3tiBthMUQNNgwbYvxOtkv3UGfHH6usbVSYkWhNgsZtp6BlJgESLjvxo/H UPrA==; 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=1774963603; x=1775568403; 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=KCoTarRx1ryrN41uofrKBEd5fkW8fcmI+Btf80Qkazk=; b=jzGZHbAWtyqNW3lJQBcXvgZmy0pbtmjwtTLRoivP6hFSNMgXLe4XOA1s9eF6NGPSoi 8Mq1qBGHvsSIHlr0JmvJqEbXUt7e7EsuyLhuiqnFwXGG7AJjtXFbDzwAVYwOhkmIbkan bvhRIYeEKk6l8FFdVTwhMvaGW0CYtnMeGmhPr4QZrVquhXwknQQ2G51NJSAOFyw58HV6 22tqLOG2c6WnzIg1i4dPYn4ggYOWZjqi/zQuhU3PvPG4PhSbZPw8BkblCDs+OptaYfn6 VFClUu38JoEYT1tbGweyCIqgjHOuJzuo0h+qZZUj7RC/Lf+EmFMmUx1H96GmO9D9fMp1 gYeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774963603; x=1775568403; 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=KCoTarRx1ryrN41uofrKBEd5fkW8fcmI+Btf80Qkazk=; b=h5KjnMrsBRZZAPvIPkfgCbeoLQlSovtZwcfPigGNQSyxuL2F593Yk2x1vXim7SNwzD GiPHi5tNNJktIhGFfhHPn3bUne43Vg+x1p8XNOrm0MZ4XHsbjw1cE7+GtIUspr517HDr cy7qNJzW6ma20q3xerR+fW5fSpEOR83dg59cC7Ow7dD41km4vOKlzTFQcrhVdLwAs9R1 4/+RoKnZdgf7eBUxlHWGNvWj3di8yDrJPEU0a2eJmXL/PFOzwkPZZZzlGe4XnL0SE96h Cj3Ja+GtdJAhbH0jhcmK1T06piVK+s2B6AqmF/M0eKahXDF8kmyG7fh2bhuEWYMdpvUB 5wYQ== X-Forwarded-Encrypted: i=1; AJvYcCXJHwYm9EAGJgo3qFSvHk1wwgBdwL19yWnKoRr6SfEl1NycSpSOxjIS3KpxOaX7oRCmyqbSHrq4CPFz7Lou@lists.postgresql.org X-Gm-Message-State: AOJu0YygFyonNgO9LbWGkOUFO6QGE2Ug3GpIXN2ycG4WZVI3yaRbabkl vJmyh8Ek7bI0Axjxdra4PFowW6r/NPlouO+6hDqcCTEGALp4iWGe6u7ZrMvgGz/Ho0o7k4P7mvB TsYFzE4VhCBL7BTXlTvKLJasPB5R/llY= X-Gm-Gg: ATEYQzwYZjf4ZVdbXyikpzp9mihN9OUMwDVFD2ZWGRM/HFkVZ0cRAs1R/ZKZvA0wsuV L8qEi7uquYsPLAfBvBqJvnT7fuwfWa4c3xrM9rlzgxAs+VxV/n5XmFAOULjqj8ll3CPWQ47jMtA sC5UnujbfpYY88UpzGNYFVu3wHVHe5A1TM1E/TKzDRrenPeDylVsxz5GPbgpGJVr4zLTostjTFO sE/ce7l0drvDZY+Vug8zNcU9SK14cCRvuX5TuqmcMlV+jbNZvphGi9ye6WzYbxAq5QJr0yfsZ/9 GtsDf4sH X-Received: by 2002:a05:690c:3503:b0:79e:d0e5:4069 with SMTP id 00721157ae682-79ed0e55f1cmr85607027b3.26.1774963602815; Tue, 31 Mar 2026 06:26:42 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Daniil Davydov <3danissimo@gmail.com> Date: Tue, 31 Mar 2026 20:26:29 +0700 X-Gm-Features: AQROBzCvo-AdlMFf_tK0hSZqLmhuMmrGesISSJZBfSGt7qXKjUXd9h9Kw1KR9c0 Message-ID: Subject: Re: POC: Parallel processing of indexes in autovacuum To: SATYANARAYANA NARLAPURAM Cc: Bharath Rupireddy , Masahiko Sawada , Sami Imseih , Alexander Korotkov , Matheus Alcantara , Maxim Orlov , Postgres hackers 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 Tue, Mar 31, 2026 at 2:46=E2=80=AFPM SATYANARAYANA NARLAPURAM wrote: > > On Mon, Mar 30, 2026 at 1:44=E2=80=AFAM Daniil Davydov <3danissimo@gmail.= com> wrote: >> >> Actually, autovacuum_max_parallel_workers is already limited by >> max_parallel_workers. It is not clear for me why we allow setting this G= UC >> higher than max_parallel_workers, but if this happens, I think it is a u= ser's >> misconfiguration. > > Isn=E2=80=99t there a wasted effort here if user misconfigures because an= yway we cannot launch that many workers? I suggest making a check here. We have a pretty long discussion about this in the above messages. I also think that the user have too many ways to misconfigure postgres. But we don't consider such misconfiguration as our fault. >> Parallel a/v workers inherit cost based parameters (including the >> vacuum_cost_limit) from the leader worker. Do you mean that this can be = too >> low value for parallel operation? If so, user can manually increase the >> vacuum_cost_limit reloption for those tables, where parallel a/v sleeps = too >> much (due to cost delay). > > > They don=E2=80=99t inherit but share, isn=E2=80=99t it? > Yeah, let me clarify. At the beginning of parallel a/v, the leader a/v work= er creates and initializes a shared structure, where its cost based parameters are stored. Then, all parallel workers will read them from shmem and update their parameters accordingly. -- Best regards, Daniil Davydov