On Wed, Oct 12, 2022 at 10:50 PM Peter Eisentraut <peter.eisentr...@enterprisedb.com> wrote: > On 06.10.22 15:29, Amit Langote wrote: > > I tried in the attached 0004. ModifyTable gets a new member > > extraUpdatedColsBitmaps, which is List of Bitmapset "nodes". > > > > Actually, List of Bitmapsets turned out to be something that doesn't > > just-work with our Node infrastructure, which I found out thanks to > > -DWRITE_READ_PARSE_PLAN_TREES. So, I had to go ahead and add > > first-class support for copy/equal/write/read support for Bitmapsets, > > such that writeNode() can write appropriately labeled versions of them > > and nodeRead() can read them as Bitmapsets. That's done in 0003. I > > didn't actually go ahead and make*all* Bitmapsets in the plan trees > > to be Nodes, but maybe 0003 can be expanded to do that. We won't need > > to make gen_node_support.pl emit *_BITMAPSET_FIELD() blurbs then; can > > just use *_NODE_FIELD(). > > Seeing that on 64-bit platforms we have a 4-byte padding gap in the > Bitmapset struct, sticking a node tag in there seems pretty sensible. > So turning Bitmapset into a proper Node and then making the other > adjustments you describe makes sense to me. > > Making a new thread about this might be best. > > (I can't currently comment on the rest of the patch set. So I don't > know if you'll really end up needing lists of bitmapsets. But from here > it looks like turning bitmapsets into nodes might be a worthwhile change > just by itself.)
Ok, thanks. I'll start a new thread about it. -- Thanks, Amit Langote EDB: http://www.enterprisedb.com