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.94.2) (envelope-from ) id 1tl95W-009eX0-LE for pgsql-general@arkaria.postgresql.org; Thu, 20 Feb 2025 16:07:46 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tl95V-0092ya-4w for pgsql-general@arkaria.postgresql.org; Thu, 20 Feb 2025 16:07:45 +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.94.2) (envelope-from ) id 1tl95U-0092yS-Qp for pgsql-general@lists.postgresql.org; Thu, 20 Feb 2025 16:07:45 +0000 Received: from mail-il1-x136.google.com ([2607:f8b0:4864:20::136]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tl95S-001zJF-1p for pgsql-general@lists.postgresql.org; Thu, 20 Feb 2025 16:07:44 +0000 Received: by mail-il1-x136.google.com with SMTP id e9e14a558f8ab-3d04932a36cso10450765ab.1 for ; Thu, 20 Feb 2025 08:07:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1740067660; x=1740672460; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=VE3QE62DE8cXkypN5MaMf7T9L0kBfIu+DeH2nW7a13w=; b=l/viSlCF6Z/+KSynE89GC7Vxh89zvlTsMoR/wk9XnQO1ixytmJxqF8M973zfCf+2U1 Q3tL56rl/gNiNXVhiZ/HvCjgZ8VnQQSghz4jicCDht9R6KAF+7H36uviRo/3EVzE+KJn L5OCH5GM+Q9T7NCgMhSmYrDY+CCxPFs0/CZqyuporD9+7cfxSDqG4ArL2XcaqKKrwHs+ Rz34PoPA3xH8/6O9NljVpcY4YooTcZEMSEw/yRw2MU7rw3tMhzkCLgpfRO996bEO+IMj QHzSuv95etGry7U45qsl57HbKHbdr36a+UGhIzZ1Vpp1FHx+9np9VfFnibkIw5DZK+jf cw2A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740067660; x=1740672460; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=VE3QE62DE8cXkypN5MaMf7T9L0kBfIu+DeH2nW7a13w=; b=C7LYPH7V931sbbucEBSjmpCsx+srjeuK5BGcg4nyS1MOzF3TRIXparKplNrsSJs0ue bdDrzP1nV5YTzZFycE2IiUnnPQA6GGI60i116an9K1+87I+nI3P84PzWMcNPbahSA1kl Pl4t4kaOtF2dS7O3Z12hGJHskMwTO0bEfyrhgWlY4Gs1Qsrovi5dU9h63oNnc3HQh9cT foHPHHLTjt+sclyKzaccWqeRk7gjlOYg8q7CViUdS3Nzk3w6qrIxXcMF5Ojglw1BZnAa B19vMVOvCeC5GJRJjdRVwqZEokoPfjTnfTniQn4BkTly6h+oc0T4yLgmR1VoGfIugfhr B+yA== X-Forwarded-Encrypted: i=1; AJvYcCU2rDSHoe+H5RgBTi2ZKAJ9AVrg0pMsdqXjc1f2P2xRHXZVVEhSzwOxb+lLcWo2nEtExOy+qAg2/Dvy92+M@lists.postgresql.org X-Gm-Message-State: AOJu0YxZOR+ZEMjKRnDLdTqHIeYuRly1GwNVOqg0nr486U5/au18J8qs LaMQLfDq0ow02pklkMmDhsjsfERMnVCNhEFFdfvSkBRk18Pwvk72fedhmzYbFsaxS4FxO2gUyYW zKJzD7YlHhvJcl0DojqXlzJXDgJg= X-Gm-Gg: ASbGncuJkOpW1Hct/K9jIK/4RVNByMMHw63AlK1bjLTFH14dROdh81gN/L/R5oI4ZAw 41HWzEV5rzlW8/RqUZv5PAoPqrp7rnpa1u3WjTwE1iNnsbpFPH4oqM/pQrApGg4ZSwzL9Tu+iC2 eJM4GPtMhtME9LtZMJ5Gyxbc3D5IKyMYk= X-Google-Smtp-Source: AGHT+IH76xdCqhE9wSn1GE3jMO9fhLibOjtgnSYpM8oNDVWJehoeBFakSJ3V8pkEy6QA3uefynSY3mM04zSPRtXtrxQ= X-Received: by 2002:a05:6e02:20cf:b0:3cf:c9ad:46a1 with SMTP id e9e14a558f8ab-3d2807fe837mr201350575ab.13.1740067660420; Thu, 20 Feb 2025 08:07:40 -0800 (PST) MIME-Version: 1.0 References: <2701260.1740065273@sss.pgh.pa.us> In-Reply-To: From: Greg Sabino Mullane Date: Thu, 20 Feb 2025 11:07:02 -0500 X-Gm-Features: AWEUYZkogC06MWNHILUUYppUQq_yKEiAcv4DiIqCfv8rIn6oRE0Up2dddQa87kg Message-ID: Subject: Re: #XX000: ERROR: tuple concurrently updated To: Dominique Devienne Cc: Tom Lane , pgsql-general@lists.postgresql.org Content-Type: multipart/alternative; boundary="000000000000c8e406062e9512d7" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000c8e406062e9512d7 Content-Type: text/plain; charset="UTF-8" Since you are willing to break the all one transaction rule, and if the restores were created via pg_dump, you could use the --section argument to split things up, run the "pre-data" sections serially, and the rest ("data" and "post-data") concurrently. -- Cheers, Greg -- Crunchy Data - https://www.crunchydata.com Enterprise Postgres Software Products & Tech Support --000000000000c8e406062e9512d7 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Since you are willing to break the all on= e transaction rule, and if the restores were created via pg_dump, you could= use the --section argument to split things up, run the "pre-data"= ; sections serially, and the rest ("data" and "post-data&quo= t;) concurrently.

--
Cheers,
Greg

--
<= div>Crunchy Data - https://www.crunchydata.com
Enterprise Postgres Software Pr= oducts & Tech Support

--000000000000c8e406062e9512d7--