On Fri, Jun 10, 2022 at 1:06 PM Peter Geoghegan <p...@bowt.ie> wrote: > On Thu, Jun 9, 2022 at 5:59 PM Thomas Munro <thomas.mu...@gmail.com> wrote: > > That sounds nice, but introduces subtle problems for the planner. For > > example, pathkeys that look compatible might not be, when > > merge-joining an ICU 63 index scan against an ICU 67 index scan. You > > could teach it about that, whereas with my distinct OID concept they > > would already be considered non-matching automatically. > > Right -- my proposal is likely to be more difficult to implement. > Seems like it might be worth going to the trouble of teaching the > planner about this difference, though.
Well I can report that the system from ec483147 was hellishly complicated, and not universally loved. Which isn't to say that there isn't a simple and loveable way to do it, waiting to be discovered, and I do think we could fix most of the problems with that work. It's just that I was rather thinking of this new line of attack as being a way to avoid the complications of identifying dependencies on moving things through complicated analysis of object graphs and AST, by instead attaching those slippery external things to the floor with a nail gun. That is, treating ICU 63 and ICU 67's collations as completely unrelated. I understand that that's not ideal from an end-user perspective, but maybe it's more realistically and robustly and simply implementable. Hmm.