diff options
author | George Wangensteen <george.wangensteen@mongodb.com> | 2020-11-04 11:05:52 -0500 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2021-07-26 21:17:12 +0000 |
commit | fc1eff70e7ce3f0dd53b884246723982fe6b6aac (patch) | |
tree | 92db05c7d3708565c87d988448f22b234649f846 /src | |
parent | 6bdae3b2899c0123e37172410ebe021e90cd2148 (diff) | |
download | mongo-fc1eff70e7ce3f0dd53b884246723982fe6b6aac.tar.gz |
SERVER-6036 Disable cursor timeout for cursors that belong to a session
(cherry picked from commit 920493f0c2b32fa43743934f6025790e7cf496e1)
Diffstat (limited to 'src')
-rw-r--r-- | src/mongo/db/cursor_manager.cpp | 2 | ||||
-rw-r--r-- | src/mongo/s/query/cluster_cursor_manager.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/mongo/db/cursor_manager.cpp b/src/mongo/db/cursor_manager.cpp index 790f91472b4..bd2800964fb 100644 --- a/src/mongo/db/cursor_manager.cpp +++ b/src/mongo/db/cursor_manager.cpp @@ -120,7 +120,7 @@ CursorManager::~CursorManager() { } bool CursorManager::cursorShouldTimeout_inlock(const ClientCursor* cursor, Date_t now) { - if (cursor->isNoTimeout() || cursor->_operationUsingCursor) { + if (cursor->isNoTimeout() || cursor->_operationUsingCursor || cursor->getSessionId()) { return false; } return (now - cursor->_lastUseDate) >= Milliseconds(getCursorTimeoutMillis()); diff --git a/src/mongo/s/query/cluster_cursor_manager.cpp b/src/mongo/s/query/cluster_cursor_manager.cpp index 73ae523f978..64fcb8e4d87 100644 --- a/src/mongo/s/query/cluster_cursor_manager.cpp +++ b/src/mongo/s/query/cluster_cursor_manager.cpp @@ -411,7 +411,7 @@ std::size_t ClusterCursorManager::killMortalCursorsInactiveSince(OperationContex stdx::unique_lock<Latch> lk(_mutex); auto pred = [cutoff](CursorId cursorId, const CursorEntry& entry) -> bool { - bool res = entry.getLifetimeType() == CursorLifetime::Mortal && + bool res = entry.getLifetimeType() == CursorLifetime::Mortal && !entry.getLsid() && !entry.getOperationUsingCursor() && entry.getLastActive() <= cutoff; if (res) { |