summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/window_function/partition_iterator.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/pipeline/window_function/partition_iterator.h')
-rw-r--r--src/mongo/db/pipeline/window_function/partition_iterator.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mongo/db/pipeline/window_function/partition_iterator.h b/src/mongo/db/pipeline/window_function/partition_iterator.h
index 128901834ee..28e0e6a6242 100644
--- a/src/mongo/db/pipeline/window_function/partition_iterator.h
+++ b/src/mongo/db/pipeline/window_function/partition_iterator.h
@@ -77,6 +77,13 @@ public:
return (*this)[0];
}
+ /**
+ * Returns true if iterator execution is paused.
+ */
+ bool isPaused() {
+ return _state == IteratorState::kPauseExecution;
+ }
+
enum class AdvanceResult {
kAdvanced,
kNewPartition,
@@ -287,6 +294,9 @@ private:
enum class IteratorState {
// Default state, no documents have been pulled into the cache.
kNotInitialized,
+ // Input sources do not have a result to be processed yet, but there may be more results in
+ // the future.
+ kPauseExecution,
// Iterating the current partition. We don't know where the current partition ends, or
// whether it's the last partition.
kIntraPartition,