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 1rvPvm-00Br6L-Mx for pgsql-hackers@arkaria.postgresql.org; Fri, 12 Apr 2024 23:03:39 +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 1rvPvl-001A9o-9t for pgsql-hackers@arkaria.postgresql.org; Fri, 12 Apr 2024 23:03:37 +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.94.2) (envelope-from ) id 1rvPvk-001A9g-W7 for pgsql-hackers@lists.postgresql.org; Fri, 12 Apr 2024 23:03:37 +0000 Received: from mail.thelabyrinth.net ([45.56.70.56]) by makus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1rvPvi-002Zop-MH for pgsql-hackers@postgresql.org; Fri, 12 Apr 2024 23:03:35 +0000 Received: from [10.5.0.2] (unknown [31.222.254.250]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: dsteele) by mail.thelabyrinth.net (Postfix) with ESMTPSA id C26EE54667; Fri, 12 Apr 2024 23:03:31 +0000 (UTC) Message-ID: Date: Sat, 13 Apr 2024 09:03:28 +1000 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: post-freeze damage control Content-Language: en-US To: Tomas Vondra , Tom Kincaid Cc: Michael Paquier , "Andrey M. Borodin" , Alvaro Herrera , Stefan Fercot , Robert Haas , "pgsql-hackers@postgresql.org" References: <202404091545.7zont3umry74@alvherre.pgsql> <4D31BF67-4138-41DC-831D-4BCE0466A59F@yandex-team.ru> <71fcff9e-371b-4f6a-bd34-bfe5cffb864f@enterprisedb.com> <4fb270c4-2ae0-4439-92e5-2941e73122ca@enterprisedb.com> From: David Steele In-Reply-To: <4fb270c4-2ae0-4439-92e5-2941e73122ca@enterprisedb.com> 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 4/12/24 22:12, Tomas Vondra wrote: > On 4/11/24 23:48, David Steele wrote: >> On 4/11/24 20:26, Tomas Vondra wrote: >> >>> FWIW that discussion also mentions stuff that I think the feature should >>> not do. In particular, I don't think the ambition was (or should be) to >>> make pg_basebackup into a stand-alone tool. I always saw pg_basebackup >>> more as an interface to "backup steps" correctly rather than a complete >>> backup solution that'd manage backup registry, retention, etc. >> >> Right -- this is exactly my issue. pg_basebackup was never easy to use >> as a backup solution and this feature makes it significantly more >> complicated. Complicated enough that it would be extremely difficult for >> most users to utilize in a meaningful way. > > Perhaps, I agree we could/should try to do better job to do backups, no > argument there. But I still don't quite see why introducing such > infrastructure to "manage backups" should be up to the patch adding > incremental backups. I see it as something to build on top of > pg_basebackup/pg_combinebackup, not into those tools. I'm not saying that managing backups needs to be part of pg_basebackup, but I am saying without that it is not a complete backup solution. Therefore introducing advanced features that the user then has to figure out how to manage puts a large burden on them. Implementing pg_combinebackup inefficiently out of the gate just makes their life harder. >> But they'll try because it is a new pg_basebackup feature and they'll >> assume it is there to be used. Maybe it would be a good idea to make it >> clear in the documentation that significant tooling will be required to >> make it work. > > Sure, I'm not against making it clearer pg_combinebackup is not a > complete backup solution, and documenting the existing restrictions. Let's do that then. I think it would make sense to add caveats to the pg_combinebackup docs including space requirements, being explicit about the format required (e.g. plain), and also possible mitigation with COW filesystems. Regards, -David