diff --git a/src/gausskernel/ddes/adapter/ss_transaction.cpp b/src/gausskernel/ddes/adapter/ss_transaction.cpp index d03c2d48144bf986d2966030d05e6babada5936f..a25033bb729dfc09aceb6ff32fe5486d7c561a6d 100644 --- a/src/gausskernel/ddes/adapter/ss_transaction.cpp +++ b/src/gausskernel/ddes/adapter/ss_transaction.cpp @@ -99,6 +99,12 @@ Snapshot SSGetSnapshotData(Snapshot snapshot) return NULL; } + /* For cm agent, it only query the system status using the parameter in memory. So don't need MVCC */ + if (u_sess->libpq_cxt.IsConnFromCmAgent) { + snapshot = SnapshotNow; + return snapshot; + } + if (!ENABLE_SS_BCAST_SNAPSHOT || (g_instance.dms_cxt.latest_snapshot_xmax == InvalidTransactionId && t_thrd.dms_cxt.latest_snapshot_xmax == InvalidTransactionId)) {