On Thu, Apr 10, 2025 at 12:03 PM David Rowley <dgrowleyml@gmail.com> wrote:
> On Wed, 9 Apr 2025 at 17:38, Amit Langote <amitlangote09@gmail.com> wrote:
> > Still, maybe a tiny tweak to the last line could help steer readers
> > right without diving into storage. How about:
> >
> > Most operations on EquivalenceClasses should ignore child members,
> > which are stored separately from normal members.
>
> I think the only part of the current text that makes me slightly
> uncomfortable is the "ignore child members". I don't mind your text,
> but it does introduce detail about how the members are stored, which
> isn't there before.
>
> I think the "ignore child members" part could be fixed with:
>
> --- a/src/backend/optimizer/README
> +++ b/src/backend/optimizer/README
> @@ -902,7 +902,7 @@ contain the equivalent child-relation variables or
> expressions. These
> members are *not* full-fledged members of the EquivalenceClass and do not
> affect the class's overall properties at all. They are kept only to
> simplify matching of child-relation expressions to EquivalenceClasses.
> -Most operations on EquivalenceClasses should ignore child members.
> +Most operations on EquivalenceClasses needn't look at child members.
>
> Would that be ok?
Yeah, I think that wording works well. It avoids sounding too strict
but still points things in the right direction.
--
Thanks, Amit Langote