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 1omALy-00006p-0h for pgsql-hackers@arkaria.postgresql.org; Sat, 22 Oct 2022 08:59:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1omAKy-0001k8-Av for pgsql-hackers@arkaria.postgresql.org; Sat, 22 Oct 2022 08:58:36 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1omAKx-0001jz-Qg for pgsql-hackers@lists.postgresql.org; Sat, 22 Oct 2022 08:58:35 +0000 Received: from mail-qv1-xf2f.google.com ([2607:f8b0:4864:20::f2f]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1omAKv-0003wP-AY for pgsql-hackers@postgresql.org; Sat, 22 Oct 2022 08:58:34 +0000 Received: by mail-qv1-xf2f.google.com with SMTP id i12so3425955qvs.2 for ; Sat, 22 Oct 2022 01:58:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=timescale.com; s=google; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=u6XYLsMvExbiEJLKO4fGiOkhTCoyZXBdSsNVtUmAc9E=; b=Q7Yqls1wd1/OAk0E76GpBeKEd3g9rwW6quuXwoyz68PLwaF6edr3cAmgPCRTBzWmRY ptpaGoohd26Tzp0+Qm3JTFnf8AZ1S0Bo24dBhU3sKz1mr4pUCF4oU5idoVrQC/qS/Rcf ZckLTBh4tPvd8Ay4/h6TqEz9KDV/FD7mz+AHmJxzx4XQeSS2y7JysSohrtfG65tHJGuC OxjQ+8BSwggGgJMUYMgnXA24xxS1Ckz4MVL+Z/tFPoysPGS2IcBY05enPf5dhyXOrJGu rftRftZyIDEOT/eJYJajIHlPTvL5CeXGWQE2xcAWYZ/WEGQIaM/IfB+obLjTkpDQixkh Y/PQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=u6XYLsMvExbiEJLKO4fGiOkhTCoyZXBdSsNVtUmAc9E=; b=QiW7m7UGUiiXmGoZhcbyaBJY7SbWhqnLcCsfazr0Sf1cJj9mwNXQhTMZCpG8ArNYhS gHMB95jt8Uv10la3iBMLJVg33V2XIpBFMyE7sdcfHMl8BpTGS9OmQKl1C5s8OZ9jfnT6 u6ihXzFjbV6xUH/CHmkoU6+lCuCubI2hWZiz9aNPWsSm43RszWDt0DsWpTKwUB2OvslR cMlozpMHPaJXF5Mcm/YZONsv3Hax8F2w0xsHsc5eALMXgbAx+D4n1Kf+ngUbGiFMetXW +IOqGXPlEZaQavC0VS7bbdT1RUSqR930d1dyRaR+8chk3nMuFsrc8vela23je6IrE99y 661g== X-Gm-Message-State: ACrzQf3bUw/zwBxSa0USTCJeZx/TtuCtmjiE/cyNrj7GNamE27OEkxei goezj4KBU/Ir1rAGyazuyj9GwY3SxUCkfmsUqELHHqO3gPc= X-Google-Smtp-Source: AMsMyM4fLUnnU6K7hGoDTUj+Z202FX5+8T/4mDsGhLTgadmCAMJMmQZVtgrsy7bcfC930QvpRsDB1A3S3Gk0efpcC0c= X-Received: by 2002:a05:6214:c8a:b0:4b4:3e6d:8cac with SMTP id r10-20020a0562140c8a00b004b43e6d8cacmr19766794qvr.104.1666429101307; Sat, 22 Oct 2022 01:58:21 -0700 (PDT) MIME-Version: 1.0 References: <20220802153704.lhrqpqdrrlpandh7@awork3.anarazel.de> In-Reply-To: From: Aleksander Alekseev Date: Sat, 22 Oct 2022 11:58:10 +0300 Message-ID: Subject: Re: Pluggable toaster To: pgsql-hackers Cc: Jacob Champion , Nikita Malakhov , Andres Freund , Matthias van de Meent , Robert Haas , Greg Stark , Teodor Sigaev Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Hi Nikita, > Aleksander, we have had this in mind while developing this feature, and have checked it. Just a slight modification is needed > to make it work with Pluggable Storage (Access Methods) API. Could you please clarify this a little from the architectural point of view? Let's say company A implements some specific TableAM (in-memory / the one that uses undo logging / etc). Company B implements an alternative TOAST mechanism. How the TOAST extension is going to work without knowing any specifics of the TableAM the user chooses for the given relation, and vice versa? How one of the extensions is going to upgrade / downgrade between the versions without knowing any implementation details of another? -- Best regards, Aleksander Alekseev