diff --git a/src/backend/distributed/executor/executor_util_tasks.c b/src/backend/distributed/executor/executor_util_tasks.c index 6a3eec8fc..60ca84f14 100644 --- a/src/backend/distributed/executor/executor_util_tasks.c +++ b/src/backend/distributed/executor/executor_util_tasks.c @@ -80,8 +80,8 @@ TaskListRequiresRollback(List *taskList) if (ReadOnlyTask(task->taskType)) { - return SelectOpensTransactionBlock && - IsTransactionBlock(); + return (SelectOpensTransactionBlock && IsTransactionBlock()) || + IsolationUsesXactSnapshot(); } if (IsMultiStatementTransaction())