summaryrefslogtreecommitdiff
path: root/src/mongo/s/ns_targeter.h
diff options
context:
space:
mode:
authorGreg Studer <greg@10gen.com>2014-01-16 12:40:27 -0500
committergregs <greg@10gen.com>2014-01-23 11:29:56 -0500
commitcf99842a3a495cb86efca4d702fb8a45e5768072 (patch)
treee9c25e724305877746ce5d4b514310905602f330 /src/mongo/s/ns_targeter.h
parenta6c4e86b0aba95fd34ef4b912909e9dd89d8425e (diff)
downloadmongo-cf99842a3a495cb86efca4d702fb8a45e5768072.tar.gz
SERVER-12367 detect halted progress in write command execution, report error
Diffstat (limited to 'src/mongo/s/ns_targeter.h')
-rw-r--r--src/mongo/s/ns_targeter.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/mongo/s/ns_targeter.h b/src/mongo/s/ns_targeter.h
index 093f56db72f..4baae5bd6cf 100644
--- a/src/mongo/s/ns_targeter.h
+++ b/src/mongo/s/ns_targeter.h
@@ -57,9 +57,9 @@ namespace mongo {
*
* 3. Goto 0.
*
- * The refreshIfNeeded() operation must make progress against noted targeting or stale config
- * failures, see comments below. No functions may block for shared resources or network calls
- * except refreshIfNeeded().
+ * The refreshIfNeeded() operation must try to make progress against noted targeting or stale
+ * config failures, see comments below. No functions may block for shared resources or network
+ * calls except refreshIfNeeded().
*
* Implementers are free to define more specific targeting error codes to allow more complex
* error handling.
@@ -131,12 +131,13 @@ namespace mongo {
*
* After this function is called, the targeter should be in a state such that the noted
* stale responses are not seen again and if a targeting failure occurred it reloaded -
- * it should make progress.
+ * it should try to make progress. If provided, wasChanged is set to true if the targeting
+ * information used here was changed.
*
* NOTE: This function may block for shared resources or network calls.
* Returns !OK with message if could not refresh
*/
- virtual Status refreshIfNeeded() = 0;
+ virtual Status refreshIfNeeded( bool* wasChanged ) = 0;
};