Re: [sqlsmith] Planner crash on foreign table join
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Andrew Gierth <andrew@tao11.riddles.org.uk>,
Andreas Seltenreich <seltenreich@gmx.de>,
"pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>,
Simon Riggs <simon@2ndquadrant.com>
Date: 2017-04-08T21:20:28Z
Lists: pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes: > On Sat, Apr 8, 2017 at 3:57 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: >> This makes me wonder whether we were being penny-wise and pound-foolish >> by not making Bitmapsets be a kind of Node, so that there could be IsA >> assertions in the bitmapset.c routines, as there are for Lists. > I think it's pretty dubious to change this, honestly. Just because it > would have caught this one bug doesn't make it an especially valuable > thing in general. Bytes are still not free. Yeah, true. OTOH I recall Andres lobbying to change the bitmap word size to 64 bits on 64-bit hardware, and it *would* be free in that case due to alignment padding. What I think I might do is write a trial patch that turns Bitmapsets into Nodes, and see if it catches any other existing bugs. If it does not, that would be good evidence for your position. We could also consider installing the nodetag only in Assert-enabled builds, although that approach would prevent us from applying followon simplifications such as not having to treat bitmapset fields specially in copyfuncs.c and like places. regards, tom lane
Commits
-
Improve castNode notation by introducing list-extraction-specific variants.
- 8f0530f58061 10.0 landed
- ff9398052df5 9.3.17 landed
- be182d570210 9.6.3 landed
- bcb1a27dc039 9.5.7 landed
- ba0a0f3ed9e0 9.2.21 landed
- 89a41a1b6b71 9.4.12 landed
-
Clean up bugs in clause_selectivity() cleanup.
- eef8c0069e4d 10.0 landed
-
Add newly-symlinked files to "make clean" target.
- aba696d1af9a 10.0 cited
-
Reset API of clause_selectivity()
- ac2b09508834 10.0 cited