public inbox for [email protected]
help / color / mirror / Atom feedFrom: Nikita Malakhov <[email protected]>
To: Jacob Champion <[email protected]>
Cc: Aleksander Alekseev <[email protected]>
Cc: pgsql-hackers <[email protected]>
Cc: Andres Freund <[email protected]>
Cc: Matthias van de Meent <[email protected]>
Cc: Robert Haas <[email protected]>
Cc: Greg Stark <[email protected]>
Cc: Teodor Sigaev <[email protected]>
Subject: Re: Pluggable toaster
Date: Tue, 4 Oct 2022 13:45:38 +0300
Message-ID: <CAN-LCVMFKfDQ8XDAhuVbF0NPfwFdK283Nd6NupSrvhNGPPVK5Q@mail.gmail.com> (raw)
In-Reply-To: <CAN-LCVPwNXkYqA_jh0NTRL-YMrrqYPA4Hi5vmpsWhv8+rXoH9A@mail.gmail.com>
References: <CAEze2Wh=PzpX-NT=Vo5c3J45tdyBSdkJM7-VVOWfVPmDYw7fmQ@mail.gmail.com>
<CAN-LCVMC2ukb=6W2XyUdMc+AF5pipUvTkDLnZMty=dG3CCdaGw@mail.gmail.com>
<CAN-LCVNkU+kdieu4i_BDnLgGszNY1RCnL6Dsrdz44fY7FOG3vg@mail.gmail.com>
<CAN-LCVNMot2xqq2pHi4OCbgA1nK4KkRfWiJQGK9EgiTbW3O8gQ@mail.gmail.com>
<CAEze2Wica9S9b-1ufhKKDVausdv02aObryjddEMF3+K_Sk6c1w@mail.gmail.com>
<CAN-LCVMBe-U1+phVR21px_kG0rL-5pwz3U2TmCmpM8XtEbPUDg@mail.gmail.com>
<CAN-LCVOUPnNFV_AAtFsE9oKiWzVji8AF814DBh+C_9e_5ST+AQ@mail.gmail.com>
<CAJ7c6TPKLpeOrNWV=F=OP0tYEOoX_tDP0FdV48R-qqefU7s77g@mail.gmail.com>
<CAN-LCVMjh=GW+Otyfe90NqPS8JJjWhia4=n2sLNYLsi43a3bQg@mail.gmail.com>
<CAN-LCVNLfu-1n94CnZTeD7stToJ=xXGJhrENHjqONZ3n79RRqQ@mail.gmail.com>
<[email protected]>
<CAN-LCVMXN-igZdOH4kunF0p2jobsksNhFXovEXjr-zVF90Nq1A@mail.gmail.com>
<CAJ7c6TOhJ5zc+f=OR6F7UmV0BgeO=oSUJ4wnYMuHoysGa4XDmQ@mail.gmail.com>
<CAN-LCVMpb5t0QheofS=9gQbKSY-Hf_ESCRjBeG-pbL90gRprag@mail.gmail.com>
<CAAWbhmgeENHPXEY5UR+aGd5VpUiTxwdmtCjEoXq++s6qLjrWZg@mail.gmail.com>
<CAN-LCVMxZU1F2E5NenDQ6JJDpdUkEK00feM7ih8ts6iqP3FF1w@mail.gmail.com>
<CAAWbhmgJRhYO0ZN-72vX=pz5VDPfUermexBVLwMgNu1mTWwajA@mail.gmail.com>
<CAN-LCVN+jjUN3WwY29xbgv3denB2pREYP-ibKY3+62KD0HPkzw@mail.gmail.com>
<CAN-LCVOqWVWqZ60weCQgbt1F8gDLt8edXO7Fse_UJ0MigDxNiA@mail.gmail.com>
<CAN-LCVPO3y_bgex36tte9LsHjkiLFsz075CBoxj-c5B=nkL2Dw@mail.gmail.com>
<CAN-LCVOi20yKrEC198=ty9DLi_dfSP6z55SVZwaXO2YGVeVmZw@mail.gmail.com>
<CAN-LCVPwNXkYqA_jh0NTRL-YMrrqYPA4Hi5vmpsWhv8+rXoH9A@mail.gmail.com>
Hi hackers!
Now cfbot is happy, but there were warnings due to recent changes in
PointerGetDatum function, so here's corrected patchset.
Patchset consists of:
v20-0001-toaster-interface.patch - Pluggable TOAST API interface along with
reference TOAST mechanics - new API is introduced but
reference TOAST is still unchanged;
v20-0002-toaster-default.patch - Default TOAST re-implemented
using Toaster API - reference TOAST is re-implemented via new API;
v20-0003-toaster-docs.patch - Pluggable TOAST API documentation package
Actual GitHub branch resides at
https://github.com/postgrespro/postgres/tree/toasterapi_clean
On Tue, Oct 4, 2022 at 1:02 AM Nikita Malakhov <[email protected]> wrote:
> Hi hackers!
> Cfbot failed in meson build with previous patchsets, so I've rebased them
> onto the latest master and added necessary meson build info.
>
> Patchset consists of:
> v19-0001-toaster-interface.patch - Pluggable TOAST API interface along
> with reference TOAST mechanics - new API is introduced but
> reference TOAST is still unchanged;
> v19-0002-toaster-default.patch - Default TOAST re-implemented using
> Toaster API - reference TOAST is re-implemented via new API;
> v19-0003-toaster-docs.patch - Pluggable TOAST API documentation package
>
> Actual GitHub branch resides at
> https://github.com/postgrespro/postgres/tree/toasterapi_clean
>
> On Tue, Sep 27, 2022 at 12:26 AM Nikita Malakhov <[email protected]>
> wrote:
>
>> Hi,
>> Meson build for the patchset failed, meson build files attached and
>> README/Doc package
>> reworked with more detailed explanation of virtual function table along
>> with other corrections.
>>
>> On Sun, Sep 25, 2022 at 1:41 AM Nikita Malakhov <[email protected]>
>> wrote:
>>
>>> Hi hackers!
>>> Last patchset has an invalid patch file - v16-0003-toaster-docs.patch.
>>> Here's corrected patchset,
>>> sorry for the noise.
>>>
>>> On Sat, Sep 24, 2022 at 3:50 PM Nikita Malakhov <[email protected]>
>>> wrote:
>>>
>>>> Hi hackers!
>>>>
>>>> Cfbot is still not happy with the patchset, so I'm attaching a rebased
>>>> one, rebased onto the current
>>>> master (from today). The third patch contains documentation package,
>>>> and the second one contains large
>>>> README.toastapi file providing additional in-depth docs for developers.
>>>>
>>>> Comments would be greatly appreciated.
>>>>
>>>> Again, after checking patch sources I have a strong opinion that it
>>>> needs some refactoring -
>>>> move all files related to TOAST implementation into new folder
>>>> /backend/access/toast where
>>>> Generic (default) Toaster resides.
>>>>
>>>> Patchset consists of:
>>>> v16-0001-toaster-interface.patch - Pluggable TOAST API interface along
>>>> with reference TOAST mechanics;
>>>> v16-0002-toaster-default.patch - Default TOAST re-implemented using
>>>> Toaster API;
>>>> v16-0003-toaster-docs.patch - Pluggable TOAST API documentation package
>>>>
>>>> Actual GitHub branch resides at
>>>> https://github.com/postgrespro/postgres/tree/toasterapi_clean
>>>>
>>>> On Fri, Sep 23, 2022 at 10:54 PM Nikita Malakhov <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi hackers!
>>>>>
>>>>> Cfbot is not happy with previous patchset, so I'm attaching new one,
>>>>> rebased onto current master
>>>>> (15b4). Also providing patch with documentation package, and the
>>>>> second one contains large
>>>>> README.toastapi file providing additional in-depth docs for developers.
>>>>>
>>>>> Comments would be greatly appreciated.
>>>>>
>>>>> Also, after checking patch sources I have a strong opinion that it
>>>>> needs some refactoring -
>>>>> move all files related to TOAST implementation into new folder
>>>>> /backend/access/toast where
>>>>> Generic (default) Toaster resides.
>>>>>
>>>>> Patchset consists of:
>>>>> v15-0001-toaster-interface.patch - Pluggable TOAST API interface along
>>>>> with reference TOAST mechanics;
>>>>> v15-0002-toaster-default.patch - Default TOAST re-implemented using
>>>>> Toaster API;
>>>>> v15-0003-toaster-docs.patch - Pluggable TOAST API documentation package
>>>>>
>>>>> On Tue, Sep 13, 2022 at 7:50 PM Jacob Champion <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> On Mon, Sep 12, 2022 at 11:45 PM Nikita Malakhov <[email protected]>
>>>>>> wrote:
>>>>>> > It would be more clear for complex data types like JSONB, where
>>>>>> developers could
>>>>>> > need some additional functionality to work with internal
>>>>>> representation of data type,
>>>>>> > and its full potential is revealed in our JSONB toaster extension.
>>>>>> The JSONB toaster
>>>>>> > is still in development but we plan to make it available soon.
>>>>>>
>>>>>> Okay. It'll be good to have that, because as it is now it's hard to
>>>>>> see the whole picture.
>>>>>>
>>>>>> > On installing dummy_toaster contrib: I've just checked it by making
>>>>>> a patch from commit
>>>>>> > and applying onto my clone of master and 2 patches provided in
>>>>>> previous email without
>>>>>> > any errors and sll checks passed - applying with git am, configure
>>>>>> with debug, cassert,
>>>>>> > depend and enable-tap-tests flags and run checks.
>>>>>> > Please advice what would cause such a behavior?
>>>>>>
>>>>>> I don't think the default pg_upgrade tests will upgrade contrib
>>>>>> objects (there are instructions in src/bin/pg_upgrade/TESTING that
>>>>>> cover manual dumps, if you prefer that method). My manual steps were
>>>>>> roughly
>>>>>>
>>>>>> =# CREATE EXTENSION dummy_toaster;
>>>>>> =# CREATE TABLE test (t TEXT
>>>>>> STORAGE external
>>>>>> TOASTER dummy_toaster_handler);
>>>>>> =# \q
>>>>>> $ initdb -D newdb
>>>>>> $ pg_ctl -D olddb stop
>>>>>> $ pg_upgrade -b <install path>/bin -B <install path>/bin -d
>>>>>> ./olddb -D ./newdb
>>>>>>
>>>>>> (where <install path>/bin is on the PATH, so we're using the right
>>>>>> binaries).
>>>>>>
>>>>>> Thanks,
>>>>>> --Jacob
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Regards,
>>>>> Nikita Malakhov
>>>>> Postgres Professional
>>>>> https://postgrespro.ru/
>>>>>
>>>>
>>>>
>>>> --
>>>> Regards,
>>>> Nikita Malakhov
>>>> Postgres Professional
>>>> https://postgrespro.ru/
>>>>
>>>
>>>
>>> --
>>> Regards,
>>> Nikita Malakhov
>>> Postgres Professional
>>> https://postgrespro.ru/
>>>
>>
>>
>> --
>> Regards,
>> Nikita Malakhov
>> Postgres Professional
>> https://postgrespro.ru/
>>
>
>
> --
> Regards,
> Nikita Malakhov
> Postgres Professional
> https://postgrespro.ru/
>
--
Regards,
Nikita Malakhov
Postgres Professional
https://postgrespro.ru/
view thread (67+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
Subject: Re: Pluggable toaster
In-Reply-To: <CAN-LCVMFKfDQ8XDAhuVbF0NPfwFdK283Nd6NupSrvhNGPPVK5Q@mail.gmail.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox