Re: Ensuring hash tuples are properly maxaligned
Thomas Munro <thomas.munro@enterprisedb.com>
From: Thomas Munro <thomas.munro@enterprisedb.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Andres Freund <andres@anarazel.de>, pgsql-hackers@lists.postgresql.org
Date: 2018-01-03T01:29:15Z
Lists: pgsql-hackers
On Wed, Jan 3, 2018 at 2:20 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > Andres Freund <andres@anarazel.de> writes: >> But note that dsa_pointer can be wider than a regular pointer on >> platforms without atomics support. > > Hm. I did not get that impression from the comments in dsa.h, > but if it's true then this approach won't work --- and indeed the > hash code would be actively broken in such a case, so it's a problem > we must fix. Maybe Andres is thinking of dsa_pointer_atomic? dsa_pointer is normally the size of a pointer (well, really, the size of size_t), though it could be *narrower* if you don't have atomics or ask for it with USE_SMALL_DSA_POINTER -- Thomas Munro http://www.enterprisedb.com
Commits
-
Ensure proper alignment of tuples in HashMemoryChunkData buffers.
- 5dc692f78d3b 11.0 landed