On Wed, 21 Aug 2024 at 06:41, Robert Haas <robertmh...@gmail.com> wrote: > I like trying to use ONLY somehow.
Do you mean as an ANALYZE command option, i.e. ANALYZE (only) table; or as a table modifier like gram.y's extended_relation_expr? Making it a command option means that the option would apply to all tables listed, whereas if it was more like an extended_relation_expr, the option would be applied per table listed in the command. 1. ANALYZE ONLY ptab, ptab2; -- gather stats on ptab but not on its partitions but get stats on ptab2 and stats on its partitions too. 2. ANALYZE ONLY ptab, ONLY ptab2; -- gather stats on ptab and ptab2 without doing that on any of their partitions. Whereas: "ANALYZE (ONLY) ptab, ptab2;" would always give you the behaviour of #2. If we did it as a per-table option, then we'd need to consider what should happen if someone did: "VACUUM ONLY parttab;". Probably silently doing nothing wouldn't be good. Maybe a warning, akin to what's done in: postgres=# analyze (skip_locked) a; WARNING: skipping analyze of "a" --- lock not available David