Re: ExecBuildGroupingEqual versus collations

2018-12-18 Thread Peter Eisentraut
On 14/12/2018 20:25, Tom Lane wrote: > Now, it's certainly true that nameeq() doesn't need a collation spec > today, any more than texteq() does, because both types legislate that > equality is bitwise. But if we leave ExecBuildGroupingEqual like this, > we're mandating that no type anywhere, ever

Re: ExecBuildGroupingEqual versus collations

2018-12-15 Thread Tom Lane
I wrote: > Andres Freund writes: >> On 2018-12-14 14:25:30 -0500, Tom Lane wrote: >>> Now, it's certainly true that nameeq() doesn't need a collation spec >>> today, any more than texteq() does, because both types legislate that >>> equality is bitwise. But if we leave ExecBuildGroupingEqual like

Re: ExecBuildGroupingEqual versus collations

2018-12-14 Thread Tom Lane
Andres Freund writes: > On 2018-12-14 14:25:30 -0500, Tom Lane wrote: >> Now, it's certainly true that nameeq() doesn't need a collation spec >> today, any more than texteq() does, because both types legislate that >> equality is bitwise. But if we leave ExecBuildGroupingEqual like this, >> we're

Re: ExecBuildGroupingEqual versus collations

2018-12-14 Thread Andres Freund
Hi, On 2018-12-14 14:25:30 -0500, Tom Lane wrote: > In pursuit of places that might not be on board with non-default > collations, I tried sticking > > Assert(PG_GET_COLLATION() == C_COLLATION_OID); > > into nameeq() and the other name comparison functions, in my build with > type name's typ

Re: ExecBuildGroupingEqual versus collations

2018-12-14 Thread Tom Lane
Isaac Morland writes: > On Fri, 14 Dec 2018 at 14:25, Tom Lane wrote: >> Now, it's certainly true that nameeq() doesn't need a collation spec >> today, any more than texteq() does, because both types legislate that >> equality is bitwise. But if we leave ExecBuildGroupingEqual like this, >> we'r

Re: ExecBuildGroupingEqual versus collations

2018-12-14 Thread Isaac Morland
On Fri, 14 Dec 2018 at 14:25, Tom Lane wrote: > Now, it's certainly true that nameeq() doesn't need a collation spec > today, any more than texteq() does, because both types legislate that > equality is bitwise. But if we leave ExecBuildGroupingEqual like this, > we're mandating that no type any

ExecBuildGroupingEqual versus collations

2018-12-14 Thread Tom Lane
In pursuit of places that might not be on board with non-default collations, I tried sticking Assert(PG_GET_COLLATION() == C_COLLATION_OID); into nameeq() and the other name comparison functions, in my build with type name's typcollation changed to "C". I'm down to one place in the core regr