public inbox for [email protected]
help / color / mirror / Atom feedFrom: Tom Lane <[email protected]>
To: Alexander Korotkov <[email protected]>
Cc: Guo, Adam <[email protected]>
Cc: [email protected] <[email protected]>
Subject: Re: pg_trgm comparison bug on cross-architecture replication due to different char implementation
Date: Tue, 30 Apr 2024 13:29:32 -0400
Message-ID: <[email protected]> (raw)
In-Reply-To: <CAPpHfdsgjG1nQoMjoUH5R6NE9-tE3=i6pPJNQiqDgQuHW-AHdA@mail.gmail.com>
References: <[email protected]>
<[email protected]>
<CAPpHfdsaqjye-gg-PN5KAyrWey7By-esajK0AWe6MjtY=o23XA@mail.gmail.com>
<[email protected]>
<CAPpHfdsgjG1nQoMjoUH5R6NE9-tE3=i6pPJNQiqDgQuHW-AHdA@mail.gmail.com>
Alexander Korotkov <[email protected]> writes:
> I agree that storing char signedness might seem weird. But it appears
> that we already store indexes that depend on char signedness. So,
> it's effectively property of bits-on-disk even though it affects
> indirectly. Then I see two options to make the picture consistent.
> 1) Assume that char signedness is somehow a property of bits-on-disk
> even though it's weird. Then pg_trgm indexes are correct, but we need
> to store char signedness in pg_control.
> 2) Assume that char signedness is not a property of bits-on-disk.
> Then pg_trgm indexes are buggy and need to be fixed.
> What do you think?
The problem with option (2) is the assumption that pg_trgm's behavior
is the only bug of this kind, either now or in the future. I think
that's just about an impossible standard to meet, because there's no
realistic way to test whether char signedness is affecting things.
(Sure, you can compare results across platforms, but maybe you
just didn't test the right case.)
Also, the bigger picture here is the seeming assumption that "if
we change pg_trgm then it will be safe to replicate from x86 to
arm". I don't believe that that's a good idea and I'm unwilling
to promise that it will work, regardless of what we do about
char signedness. That being the case, I don't want to invest a
lot of effort in the signedness issue. Option (1) is clearly
a small change with little if any risk of future breakage.
Option (2) ... not so much.
regards, tom lane
view thread (21+ 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]
Subject: Re: pg_trgm comparison bug on cross-architecture replication due to different char implementation
In-Reply-To: <[email protected]>
* 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