Re: What to call an executor node which lazily caches tuples in a hash table? (GUC)

From: David Rowley <dgrowleyml(at)gmail(dot)com>
To: Justin Pryzby <pryzby(at)telsasoft(dot)com>
Cc: PostgreSQL Developers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, Melanie Plageman <melanieplageman(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Andy Fan <zhihui(dot)fan1213(at)gmail(dot)com>
Subject: Re: What to call an executor node which lazily caches tuples in a hash table? (GUC)
Date: 2021-06-03 03:04:33
Message-ID: CAApHDvos7z90hyiuX3kcFe0Q_4WYWfwFABOygo4aeBbemyF9sQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, 3 Jun 2021 at 14:36, Justin Pryzby <pryzby(at)telsasoft(dot)com> wrote:
>
> You started the thread about what to call the node, but what about its GUC?
>
> Should it be enable_result_cache instead of enable_resultcache?
>
> See also Robert's opinion last year about enable_incrementalsort and "economizing on underscores".
> https://www.postgresql.org/message-id/flat/CA%2BTgmoazhPwebpOwNbHt1vJoos1eLYhJVQPka%2BpptSLgS685aA%40mail.gmail.com#e6d5ea0a10384d540b924688c6357b21

If starting fresh, either is ok for me. We already have a mix and we
ended up adding the underscore to enable_incremental_sort as people
thought it was more clear. I did vote to keep it as it was without the
underscore as it seemed to follow the other enable* GUCs more closely.

I get the idea that we changed enable_incrementalsort because the word
incremental was fairly long when you compare it to things like hash,
nest and merge. "result" is not too much longer so I don't really
feel like the name enable_resultcache is wrong. Since it's already
called that, I'd rather not confuse things.

To be honest, I'd rather the discussion was about whether we want to
actually call the entire node "Result Cache" in the first place. I
did do an internet search a few weeks ago on "Result Cache" just to
see if anyone was talking about it anywhere that I might miss. I
discovered that Oracle has something of the same name, but going by
[1] it appears that function is for caching results between queries.
That's obviously not what PostgreSQL's Result Cache does. After
learning that, I dislike the name "Result Cache" even more.

FWIW, I'm still willing to go and do the renaming work for the node,
but the time we have to do that is ticking away fast and so far
there's no consensus [2] on any other name. Just a few people
suggesting other names.

David

[1] https://logicalread.com/huge-performance-gains-using-oracle-11g-result-cache-dr01/#.YLhEjLczb9Q
[2] https://www.postgresql.org/message-id/CAApHDvq=yQXr5kqhRviT2RhNKwToaWr9JAN5t+5_PzhuRJ3wvg@mail.gmail.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Greg Nancarrow 2021-06-03 03:05:50 Re: Re[3]: On login trigger: take three
Previous Message Michael Paquier 2021-06-03 03:03:53 Re: TAP tests still sensitive to various PG* environment variables