From: | "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com> |
---|---|
To: | 'Jelte Fennema' <postgres(at)jeltef(dot)nl> |
Cc: | Melih Mutlu <m(dot)melihmutlu(at)gmail(dot)com>, "Takamichi Osumi (Fujitsu)" <osumi(dot)takamichi(at)fujitsu(dot)com>, "shiy(dot)fnst(at)fujitsu(dot)com" <shiy(dot)fnst(at)fujitsu(dot)com>, Euler Taveira <euler(at)eulerto(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com> |
Subject: | RE: Allow logical replication to copy tables in binary format |
Date: | 2023-02-23 04:40:01 |
Message-ID: | TYAPR01MB5866DDF02B3CEE59DA024CC3F5AB9@TYAPR01MB5866.jpnprd01.prod.outlook.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Dear Jelte,
> I don't think it's necessary to check versions. Yes, there are
> situations where binary will fail across major versions. But in many
> cases it does not. To me it seems the responsibility of the operator
> to evaluate this risk. And if the operator chooses wrong and uses
> binary copy across incompatible versions, then it will still fail hard
> in that case during the copy phase (so still a very early error). So I
> don't see a reason to check pre-emptively, afaict it will only
> disallow some valid usecases and introduce more code.
>
> Furthermore no major version check is done for "binary = true" either
> (afaik). The only additional failure scenario that copy_format=binary
> introduces is when one of the types does not implement a send function
> on the source. With binary=true, this would continue to work, but with
> copy_format=binary this stops working. All other failure scenarios
> that binary encoding of types introduces apply to both binary=true and
> copy_format=binary (the only difference being in which phase of the
> replication these failures happen, the apply or the copy phase).
I thought that current specification was lack of consideration, but you meant to
say that it is intentional one to keep the availability, right?
Indeed my suggestion seems to be too pessimistic, but I want to listen to other
opinions more...
> > I'm not sure the combination of "copy_format = binary" and "copy_data = false"
> > should be accepted or not. How do you think?
>
> It seems quite useless indeed to specify the format of a copy that won't happen.
I understood that the conbination of "copy_format = binary" and "copy_data = false"
should be rejected in parse_subscription_options() and AlterSubscription(). Is it right?
I'm expecting that is done in next version.
Best Regards,
Hayato Kuroda
FUJITSU LIMITED
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2023-02-23 04:48:49 | Re: pgindent vs. git whitespace check |
Previous Message | John Naylor | 2023-02-23 04:12:56 | Re: pgindent vs. git whitespace check |