diff --git a/lib/SimpleHttpClient/GeneralClientConnection.cpp b/lib/SimpleHttpClient/GeneralClientConnection.cpp index 30119fdf60..ad5438b16a 100644 --- a/lib/SimpleHttpClient/GeneralClientConnection.cpp +++ b/lib/SimpleHttpClient/GeneralClientConnection.cpp @@ -158,10 +158,9 @@ bool GeneralClientConnection::connect() { void GeneralClientConnection::disconnect() { if (isConnected()) { disconnectSocket(); + _numConnectRetries = 0; + _isConnected = false; } - - _isConnected = false; - _numConnectRetries = 0; } //////////////////////////////////////////////////////////////////////////////// diff --git a/lib/SimpleHttpClient/SimpleHttpClient.cpp b/lib/SimpleHttpClient/SimpleHttpClient.cpp index 298a9e5644..b4631258b8 100644 --- a/lib/SimpleHttpClient/SimpleHttpClient.cpp +++ b/lib/SimpleHttpClient/SimpleHttpClient.cpp @@ -179,7 +179,7 @@ SimpleHttpResult* SimpleHttpClient::retryRequest( << "" << _params._retryMessage << " - no retries left"; break; } - + if (application_features::ApplicationServer::isStopping()) { // abort this client, will also lead to exiting this loop next setAborted(true); @@ -404,6 +404,11 @@ SimpleHttpResult* SimpleHttpClient::doRequest( break; } + if ( application_features::ApplicationServer::isStopping()) { + setErrorMessage("Command locally aborted"); + return nullptr; + } + remainingTime = endTime - TRI_microtime(); if (isAborted()) { setErrorMessage("Client request aborted");