Re: [DOCS] pg_stat_statements max size clarification - Mailing list pgsql-docs

From Peter Geoghegan
Subject Re: [DOCS] pg_stat_statements max size clarification
Date
Msg-id CAH2-Wzkwz3sKJnuoii0bwYgxvnopFwybte1982Y8BAdwd0m8og@mail.gmail.com
Whole thread Raw
In response to [DOCS] pg_stat_statements max size clarification  (baron@xaprb.com)
Responses Re: [DOCS] pg_stat_statements max size clarification  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-docs
On Sat, Jul 15, 2017 at 5:31 PM,  <baron@xaprb.com> wrote:
> I wonder if "least-executed" is correct. I'm not an expert and haven't
> convinced myself of this by examining the code, but I think after N distinct
> queryid's have been seen, then any additional ones are ignored. But that may
> not be "least-executed" at all. It's "most-recent" instead. I think we need
> a new phrase here.

It's most executed since tracking for the entry began, with a special
heuristic for queries that take a long time to execute, and might
therefore consistently be evicted before execution finishes and costs
are tallied (see "sticky entries" stuff for full details). Most
executed means the total number of calls, which may not be the best
thing to evict on the basis of, but certainly isn't too bad.

The way it actually works is that either 5% of all entries or 10
entries are evicted (whichever amount is greatest) once
pg_stat_statements.max entries are reached. You're right that this
means that the most marginal of entries cannot be usefully tracked,
but I doubt that that's much of a problem in practice. It's the usual
"recency versus frequency" cache eviction problem, but for query cost
tracking purposes if 5,000 entries or 10,000 entries is truly
insufficient, then pg_stat_statements probably isn't the right tool.

When that many entries seem insufficient that tends to be because
pg_stat_statements is arguably too discriminating about what
constitutes a distinct query/entry, but that's another problem.

--
Peter Geoghegan


pgsql-docs by date:

Previous
From: baron@xaprb.com
Date:
Subject: [DOCS] pg_stat_statements max size clarification
Next
From: Tom Lane
Date:
Subject: Re: [DOCS] pg_stat_statements max size clarification