On Thu, Dec 21, 2023 at 2:59 PM Amit Kapila <amit.kapil...@gmail.com> wrote: > > On Thu, Dec 21, 2023 at 12:07 PM Michael Paquier <mich...@paquier.xyz> wrote: > > > > On Thu, Dec 21, 2023 at 11:53:04AM +0530, Amit Kapila wrote: > > > On Thu, Dec 21, 2023 at 11:18 AM Michael Paquier <mich...@paquier.xyz> > > > wrote: > > > Yeah, if one uses them independently then there is no such guarantee. > > > > This could be possible in the same query as well, still less likely, > > as the contents are volatile. > > > > True, this is quite obvious but that was not a recommended way to use > the function. Anyway, now that we agree to expose it via an existing > function, there is no point in further argument on this. > > > >> A lot could happen between both function calls while the > > >> repslot LWLock is not hold. > > >> > > >> Yeah, you could keep the reason text as NULL when there is no > > >> conflict, replacing the boolean by the text in the function, and keep > > >> the view definition compatible with v16 while adding an extra column. > > > > > > But as mentioned we also want the enum value to be exposed in some way > > > so that it can be used by the sync slot feature [1] as well, > > > otherwise, we may need some mappings to convert the text back to an > > > enum. I guess if we want to expose via view, then we can return an > > > enum value by pg_get_replication_slots() and the view can replace it > > > with text based on the value. > > > > Sure. Something like is OK by me as long as the data is retrieved > > from a single scan of the slot data while holding the slot data's > > LWLock. > > > > Okay, so let's go this way unless someone feels otherwise.
Please track the progress in another thread [1] where the patch is posted today. [1]: https://www.postgresql.org/message-id/ZYOE8IguqTbp-seF%40paquier.xyz thanks Shveta