On Tue, Nov 10, 2020 at 8:14 AM Amit Kapila <amit.kapil...@gmail.com> wrote: > > On Mon, Nov 9, 2020 at 6:00 PM Dilip Kumar <dilipbal...@gmail.com> wrote: > > > > On Mon, Nov 9, 2020 at 5:37 PM Dilip Kumar <dilipbal...@gmail.com> wrote: > > > > > > On Mon, Nov 9, 2020 at 4:21 PM Amit Kapila <amit.kapil...@gmail.com> > > > wrote: > > > > > > The bigger question is do we want to give users an option > > > > for skip_empty_streams similar to skip_empty_xacts? I would again > > > > prefer to give a separate option to the user as well. What do you > > > > think? > > > > > > Yeah, I think giving an option would be better. > > > > I think we should also think about the combinations of the > > skip_empty_xacts and skip_empty_streams. For example, if the user > > passes the skip_empty_xacts to false and skip_empty_streams to true > > then what should be the behavior, if the complete transaction > > option1: It should not print any stream_start/stream_stop and just > > print commit stream because skip_empty_xacts is false and > > skip_empty_streams is true. > > option2: It should print the stream_start message for the very first > > stream because it is the first stream if the txn and skip_empty_xacts > > is false so print it and later it will print-stream commit. > > option3: Or for the first stream we first put the BEGIN message i.e > > stream begin > > stream start > > stream stop > > stream commit > > option4: the user should not be allowed to pass skip_empty_xacts = > > false with skip_empty_streams to true. Because if the streaming mode > > is on then we can not print the xact without printing streams. > > > > What is your opinion on this? > > > > I would prefer option-4 and in addition to that we can ensure that if > skip_empty_xacts = true then by default skip_empty_streams is also > true.
But then it will behave as a single option only, right? because if 1. skip_empty_xacts = true, then we set skip_empty_streams = true 2. skip_empty_xacts = false then skip_empty_streams can not be set to true So as per the state machine either both will be true or both will be false, Am I missing something? -- Regards, Dilip Kumar EnterpriseDB: http://www.enterprisedb.com