Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pLcfA-0006jH-0p for pgsql-hackers@arkaria.postgresql.org; Sat, 28 Jan 2023 04:18:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pLcf8-00031v-S7 for pgsql-hackers@arkaria.postgresql.org; Sat, 28 Jan 2023 04:17:58 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pLcf8-00031l-Go for pgsql-hackers@lists.postgresql.org; Sat, 28 Jan 2023 04:17:58 +0000 Received: from mail-pj1-x1030.google.com ([2607:f8b0:4864:20::1030]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pLcf1-0007Ft-LD for pgsql-hackers@postgresql.org; Sat, 28 Jan 2023 04:17:58 +0000 Received: by mail-pj1-x1030.google.com with SMTP id rm7-20020a17090b3ec700b0022c05558d22so6483927pjb.5 for ; Fri, 27 Jan 2023 20:17:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=xMaMXDrVePNGQ7arnGB6KhOMw4oBzaOXiiVWFxG+Dwg=; b=P2Z0HLfrYbxobQu2GU8okZk7c4GphwUzngTNyqpaB8PYCjWnvhCu1KOGzkCHp33Tgg AQ5RwbmSMEzrz3uNw83QSptl4/5KC/qpj2Fi6zysQk/VxDvA/v2imRBDdvEk4aiA81KD Vb/LoionwkHm7lgMVQUAmnR5UvknJgc/NOmYSuJqRx72TiaPCkVDVAz2fC7r/Nv8pcTH 5gKINxvApsDj4awolnyoYEjfQLdl2BEL5ocF19YVxa5M3GqHdWOf18jV8f1UHCvogwFk A7xryEesI/Q2jtHwOKJSyzyI4b4d/QWrFztp26ypSHW18XTfs3UNBpxUSJTPJ29CaknE TYFg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=xMaMXDrVePNGQ7arnGB6KhOMw4oBzaOXiiVWFxG+Dwg=; b=MOJzhOYwpZp2jGG+L0mvJEnOWj41NADxIdJOKq1WYU2KXrRagMVPPIfvUMiW2wiJuV GREWIomQ7CN/1D/bW0SireK13rapWkTY2L2V0gk6JovOtlk0XMuOqsp6CQ4v9R9hWjWq dPmrPxV0Ek8Z7nsWe/o4g0+6HIcsHb6wtr7kJg31A3aEBV11PqrSbifYGLWD1/QW1Sm0 mTy+6w3cLdAnIOHLaItN/W1HHJLyeJeRyvyZ2dm11hWuYkSenvgjyUvQySJ0zMjf4W/x ah/U62iXY8LRgxALa7AOIfbfo+zXWw5R6Ho1317TT/KK6CQNdi4vCgpdREJ3k2eJpYJW dJWA== X-Gm-Message-State: AO0yUKVeKJPgA4sw1uhYvmkO7uVR4YIQ3Z16ZRjPKCeoKuz3I+g2u+Pe CD/WyYJsZYdyGoVZ6Wto/6o= X-Google-Smtp-Source: AK7set+OVu96FQc4IVv2++6nQ8kYQEoXN7iqmuBTHTwuIoqtrS+Eb56PMQoAsTJ11hRt7o3c3nX4eA== X-Received: by 2002:a05:6a21:338a:b0:bc:36e4:4944 with SMTP id yy10-20020a056a21338a00b000bc36e44944mr5749620pzb.61.1674879469253; Fri, 27 Jan 2023 20:17:49 -0800 (PST) Received: from nathanxps13 ([50.47.162.83]) by smtp.gmail.com with ESMTPSA id a23-20020aa79717000000b005898fcb7c1bsm3476103pfg.177.2023.01.27.20.17.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 27 Jan 2023 20:17:48 -0800 (PST) Date: Fri, 27 Jan 2023 20:17:46 -0800 From: Nathan Bossart To: Andres Freund Cc: Michael Paquier , pgsql-hackers@postgresql.org Subject: Re: recovery modules Message-ID: <20230128041746.GA2288302@nathanxps13> References: <20230117182356.GA3015764@nathanxps13> <20230118044427.GA3369836@nathanxps13> <20230123214428.GA572995@nathanxps13> <20230128002319.362oxrxf7ardfz2a@awork3.anarazel.de> <20230128005910.GA2245287@nathanxps13> <20230128015542.baefifnqgpgtkij6@awork3.anarazel.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230128015542.baefifnqgpgtkij6@awork3.anarazel.de> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, Jan 27, 2023 at 05:55:42PM -0800, Andres Freund wrote: > On 2023-01-27 16:59:10 -0800, Nathan Bossart wrote: >> I think it would be weird for the archive module and >> recovery module interfaces to look so different, but if that's okay, I can >> change it. > > I'm a bit sad about the archive module case - I wonder if we should change it > now, there can't be many users of it out there. And I think it's more likely > that we'll eventually want multiple archiving scripts to run concurrently - > which will be quite hard with the current interface (no private state). I'm open to that. IIUC it wouldn't require too many changes to existing archive modules, and if it gets us closer to batching or parallelism, it's probably worth doing sooner than later. > I was wondering why we implement "shell" via a separate mechanism from > restore_library. I.e. a) why doesn't restore_library default to 'shell', > instead of an empty string, b) why aren't restore_command et al implemented > using a restore module. I think that's the long-term idea. For archive modules, there were concerns about backward compatibility [0]. [0] https://postgr.es/m/CABUevEx8cKy%3D%2BYQU_3NaeXnZV2bSB7Lk6EE%2B-FEcmE4JO4V1hg%40mail.gmail.com -- Nathan Bossart Amazon Web Services: https://aws.amazon.com