On Fri, Jan 7, 2022 at 12:24 AM Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Amit Langote <amitlangote09@gmail.com> writes:
> > Thanks for addressing that in the patch you posted. I guess fixing
> > only expression_tree_walker/mutator() suffices for now, but curious to
> > know if it was intentional that you decided not to touch the following
> > sites:
>
> > exprCollation(): it would perhaps make sense to return the collation
> > assigned to the 1st element of listdatums/lowerdatums/upperdatums,
> > especially given that transformPartitionBoundValue() does assign a
> > collation to the values in those lists based on the parent's partition
> > key specification.
>
> But each column could have a different collation, no? I do not
> think it's sensible to pick one of those at random and claim
> that's the collation of the whole thing. So throwing an error
> seems appropriate.
>
> > exprType(): could be handled similarly
>
> The same, in spades. Anybody who is asking for "the type"
> of a relpartbound is misguided.
Okay, agree there's no need for handling bound nodes in these
functions. Most sites that need to see the collation/type OID for
bound datums work directly with the individual elements of those lists
anyway.
> > queryjumble.c: JumbleExpr(): whose header comment says:
>
> If somebody needs that, I wouldn't object to adding support there.
> But right now it would just be dead code, so why bother?
Sure, makes sense.
--
Amit Langote
EDB: http://www.enterprisedb.com