From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [45.144.208.40]) by lore.proxmox.com (Postfix) with ESMTPS id D83681FF0E1 for ; Mon, 10 Aug 2026 07:02:50 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id 5919D215F3; Mon, 10 Aug 2026 07:02:49 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786338160; x=1786942960; darn=lists.proxmox.com; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=nIvJoi9wbAha7PtEitEUd2kjAzXpXCqM8NjViT2+IPU=; b=a4f618CAcWaIieklNyiMHMe5zXVy5LQYJm8DczLFF8CXO/NW6f3QhUTbOEEr7zYsfb IubDaWuIIYSdNHSF60zCDacijKpTw/HUVN4ZTYsasJwYmFJDf4kfi4ojqlmF5PPLOBrv FwdkwoTQJQZy21IljF5pryEOzEd3h6tgmu06IIoT1OozhD1UZyK+pMBpW2mYNBsPrmET vjWJYKFx8icNStTdEz5KGuxyPKeF6w7Abc+aFD7aXndpKWsUWiyrLf66RzG+B7h0IZ6z ATh8OZS57SX4zF8BUVrVT7QKesu35xSqSgb/EbY3mgCi1Mn9kNQzbbTVvbSd7ZBhRxk5 hOhw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786338160; x=1786942960; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=nIvJoi9wbAha7PtEitEUd2kjAzXpXCqM8NjViT2+IPU=; b=d2Ja3PUMyJBoD5h8TGqEcM1DB0WJlsxFELrkmDgqylywMh5WJgvGnBBlXuUdDO0WJX yfSYCN0PSA4jezC7oMZj6Hx+piS25J5gnXVanvP2bG2tPx1oAhw0UcwmXQLnOz+jrWwQ OLCYEOjiNXDcTiCoCAuMR4kkjdVUZMXB3ebz9woNNROejseKr3pvxdbD0NOU+DO4Jn4y cwfokzUPWOX8u4XjJ7vJO/hOBloFKVQzCdSjjzuDlFtlzxNgjxV90BksMuuU/hbZ8JRH 4emtZrO3hwBdBitLo/jF7zRWTuBRg0ie3v6CgeZ9jUariuhdjKVeJjdtsNC0aL6/Mi51 vqQw== X-Gm-Message-State: AOJu0Yz5X3sjRVlFyf1SLkcjFgSN9YCwwjT7PPhPkJ0CT3/ma+8fTTh6 zLUcVk852lFYklQsWRBvbUrAkg7Vb4g9jg7BOz5bAS/wtvRob2SvLBZDa2WhQ9tA X-Gm-Gg: AR+sD10nkZcV9jHyza35+5xFoUzAAd4iS6wFhp7zxn/tjDotg1qv6fqK5JmbkItXIJb kCxLHdImWXeJXQFjNSb3S0sQt4TKffsXFfcTm5MbKV1mq50FeTzImXAhcpz1WbkhKzMwAIBtS65 YnHGqDKpDQSyvO7dzNtqoRQWO/ymwbLHyaR2Dh1WENpTHExlC04pqfqBeB7yTzVock/8pL6O27Z 4EGy1NpYWkfUWVJlk8uwd/5Br8FnkAlhkyGzsIHsmAWONrSv3K8d8Gk2GHiZZuShRD1WMbi5gGU GYte15nqlNdRSkL+pkXDuHA2FO3hf6K2yMoKoP7wOneMhTKbroE3GB14Zgj8cpsaswA8lWn+cOQ BJRRMmamsbrL+0yCA/viD2PWTZjpZKGDlPgXXYZkb9H1wdNvol9DSn3Rc3JUfFYd+KCrFzCSp3a +8nM9/IrBxWZUl2siCiePvPHJ8EJiInXin3QpsjQAwe9jtBpMKY/U5nm0QinOTwqym/wOYP+gy5 ZexR95GyaG6dtXokVN4gzlijCDJPTDUfaZlx6Wmk6dgbMwI1nX00GA+cg2HAczbaZW3SUzjCDE= X-Received: by 2002:a05:600c:1912:b0:499:520c:62a7 with SMTP id 5b1f17b1804b1-4996194a23bmr220275925e9.5.1786338160457; Sun, 09 Aug 2026 22:02:40 -0700 (PDT) From: Enrico Plantulli To: pbs-devel@lists.proxmox.com Subject: [PATCH proxmox-backup 3/3] ui: tuning: add GC chunk metadata prefetch option Date: Mon, 10 Aug 2026 07:02:00 +0200 Message-ID: <20260810050201.347124-4-plantulli@gmail.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260810050201.347124-1-plantulli@gmail.com> References: <20260810050201.347124-1-plantulli@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.500 Adjusted score from AWL reputation of From: address DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain DMARC_PASS -0.1 DMARC pass policy FREEMAIL_FROM 0.001 Sender email is commonly abused enduser mail provider RCVD_IN_DNSWL_NONE -0.0001 Sender listed at https://www.dnswl.org/, no trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: WS6K7R2HJAUH53TKI76TE64FYV5IUPZT X-Message-ID-Hash: WS6K7R2HJAUH53TKI76TE64FYV5IUPZT X-MailFrom: plantulli@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Enrico Plantulli X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox Backup Server development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: The datastore option view rebuilds the tuning property string from the fields of the form, so a tuning option that has no field is dropped as soon as any other tuning option is edited in the GUI. Add the field for gc-chunk-metadata-prefetch, and render it explicitly in the summary instead of letting it fall through to the generic loop. Signed-off-by: Enrico Plantulli --- www/Utils.js | 6 ++++++ www/datastore/OptionView.js | 16 ++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/www/Utils.js b/www/Utils.js index d6bfd45..d09e02d 100644 --- a/www/Utils.js +++ b/www/Utils.js @@ -923,6 +923,12 @@ Ext.define('PBS.Utils', { `${gettext('GC cache capacity')}: ${gc_cache_capacity ?? Proxmox.Utils.defaultText}`, ); + let gc_chunk_metadata_prefetch = tuning['gc-chunk-metadata-prefetch']; + delete tuning['gc-chunk-metadata-prefetch']; + options.push( + `${gettext('GC chunk metadata prefetch')}: ${gc_chunk_metadata_prefetch ?? false}`, + ); + let verification_workers = tuning['default-verification-workers']; delete tuning['default-verification-workers']; options.push(`${gettext('Default verification workers')}: ${verification_workers ?? 4}`); diff --git a/www/datastore/OptionView.js b/www/datastore/OptionView.js index 42a6104..a385633 100644 --- a/www/datastore/OptionView.js +++ b/www/datastore/OptionView.js @@ -338,6 +338,22 @@ Ext.define('PBS.Datastore.Options', { deleteEmpty: true, step: 1024, }, + { + xtype: 'proxmoxcheckbox', + name: 'gc-chunk-metadata-prefetch', + fieldLabel: gettext('GC Chunk Metadata Prefetch'), + labelWidth: 200, + autoEl: { + tag: 'div', + 'data-qtip': gettext( + 'Iterate chunk directories before GC phase 1 to load chunk metadata in bulk', + ), + }, + value: 0, + uncheckedValue: 0, + defaultValue: 0, + deleteDefaultValue: true, + }, { xtype: 'proxmoxintegerfield', name: 'default-verification-readers', -- 2.47.3