aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/commands/vacuum.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/backend/commands/vacuum.c b/src/backend/commands/vacuum.c
index 96088a754cc..1c3437336d9 100644
--- a/src/backend/commands/vacuum.c
+++ b/src/backend/commands/vacuum.c
@@ -393,7 +393,9 @@ vacuum(List *relations, VacuumParams *params,
* If caller didn't give us a buffer strategy object, make one in the
* cross-transaction memory context.
*/
- if (bstrategy == NULL)
+ if (bstrategy == NULL &&
+ !(params->options & VACOPT_ONLY_DATABASE_STATS ||
+ params->options & VACOPT_FULL))
{
MemoryContext old_context = MemoryContextSwitchTo(vac_context);