Re: WIP: BRIN multi-range indexes
Tomas Vondra <tomas.vondra@enterprisedb.com>
From: Tomas Vondra <tomas.vondra@enterprisedb.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: John Naylor <john.naylor@enterprisedb.com>,
Alvaro Herrera <alvherre@alvh.no-ip.org>,
PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-03-26T14:45:34Z
Lists: pgsql-hackers
On 3/26/21 3:04 PM, Tomas Vondra wrote: > On 3/26/21 2:55 PM, Tom Lane wrote: >> Tomas Vondra <tomas.vondra@enterprisedb.com> writes: >>> I recall seeing "bus error" on sparc with other patches because of >>> alignment issues, so I wonder if this is what's happening here. >> >> Try compiling with the address sanitizer enabled. Per c.h, >> >> * Testing can be done with "-fsanitize=alignment -fsanitize-trap=alignment" >> * on clang, or "-fsanitize=alignment -fno-sanitize-recover=alignment" on gcc. >> > > Bingo! I see the one failing x86_64 machine has -fsanitize=alignment. > Yeah, the deserialization is borked. It assumes it can just point into the serialized representation of the summary, but that is "compacted" by ignoring alignment. Hence the failures. For me it fails only for timetz and interval types, but perhaps sparc is more sensitive, or maybe it's about 32/64 bits too (the only backtrace I'm aware of is from snapper, so assuming it's 32bits it'd make sense it fails on int8). I have a feeling I made the same mistake in serialization of MCV stats some time ago, shame on me. I'll get this fixed. regards -- Tomas Vondra EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
BRIN minmax-multi indexes
- ab596105b55f 14.0 landed
-
BRIN bloom indexes
- 77b88cd1bb90 14.0 landed
-
Support the old signature of BRIN consistent function
- a681e3c107aa 14.0 landed
-
Remove unnecessary pg_amproc BRIN minmax entries
- a68dfa27d42f 14.0 landed
-
Optimize allocations in bringetbitmap
- 8e4b332e88b8 14.0 landed
-
Move IS [NOT] NULL handling from BRIN support functions
- 72ccf55cb99c 14.0 landed
-
Pass all scan keys to BRIN consistent function at once
- a1c649d889bd 14.0 landed
-
Properly detoast data in brin_form_tuple
- d2d3a4bd33d2 9.5.24 landed
- bae31e75f777 9.6.20 landed
- 0b96fc977c5b 10.15 landed
- 895d0f0e8218 11.10 landed
- 8149e9f9a0d6 12.5 landed
- 6a7b55f3716f 13.1 landed
- 7577dd84807a 14.0 landed