Skip to content

Commit cb053a7

Browse files
authored
CSHARP-5738: Increase heartbeat interval and timeout if debugger is attached (#1778)
1 parent 7a57ca1 commit cb053a7

File tree

2 files changed

+17
-3
lines changed

2 files changed

+17
-3
lines changed

tests/MongoDB.Driver.TestHelpers/Core/CoreTestConfiguration.cs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@
2929
using MongoDB.Driver.Core.Operations;
3030
using MongoDB.Driver.Core.Servers;
3131
using MongoDB.Driver.Core.WireProtocol.Messages.Encoders;
32-
using MongoDB.Driver.Encryption;
3332
using MongoDB.Driver.TestHelpers;
3433
using Xunit.Sdk;
3534

@@ -127,7 +126,16 @@ public static ClusterBuilder ConfigureCluster(ClusterBuilder builder)
127126
{
128127
builder = builder
129128
.ConfigureWithConnectionString(__connectionString.Value, __serverApi.Value)
130-
.ConfigureCluster(c => c.With(serverSelectionTimeout: __defaultServerSelectionTimeout.Value));
129+
.ConfigureCluster(c => c.With(serverSelectionTimeout: __defaultServerSelectionTimeout.Value))
130+
.ConfigureServer(s =>
131+
{
132+
if (Debugger.IsAttached)
133+
{
134+
s = s.With(heartbeatTimeout: TimeSpan.FromDays(1), serverMonitoringMode: ServerMonitoringMode.Poll);
135+
}
136+
137+
return s;
138+
});;
131139

132140
if (__connectionString.Value.Tls.HasValue &&
133141
__connectionString.Value.Tls.Value &&

tests/MongoDB.Driver.TestHelpers/DriverTestConfiguration.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
using MongoDB.Driver.Core.Clusters;
2525
using MongoDB.Driver.Core.Configuration;
2626
using MongoDB.Driver.Core.Connections;
27-
using MongoDB.Driver.Core.Logging;
2827
using MongoDB.Driver.Core.Servers;
2928
using MongoDB.Driver.Encryption;
3029

@@ -184,6 +183,13 @@ public static MongoClientSettings GetClientSettings()
184183
{
185184
serverSelectionTimeoutString = "30000";
186185
}
186+
187+
if (System.Diagnostics.Debugger.IsAttached)
188+
{
189+
clientSettings.HeartbeatTimeout = TimeSpan.FromDays(1);
190+
clientSettings.ServerMonitoringMode = ServerMonitoringMode.Poll;
191+
}
192+
187193
clientSettings.ServerSelectionTimeout = TimeSpan.FromMilliseconds(int.Parse(serverSelectionTimeoutString));
188194
clientSettings.ClusterConfigurator = cb => CoreTestConfiguration.ConfigureLogging(cb);
189195
clientSettings.ServerApi = CoreTestConfiguration.ServerApi;

0 commit comments

Comments
 (0)