106 lines
2.3 KiB
YAML
106 lines
2.3 KiB
YAML
description: Repeated isWritablePrimary response must be processed
|
|
|
|
uri: "mongodb://a,b/?replicaSet=rs"
|
|
|
|
phases:
|
|
# Phase 1 - a says it's not primary and suggests c may be the primary
|
|
- responses:
|
|
-
|
|
- "a:27017"
|
|
- ok: 1
|
|
helloOk: true
|
|
isWritablePrimary: false
|
|
secondary: true
|
|
hidden: true
|
|
hosts: ["a:27017", "c:27017"]
|
|
setName: "rs"
|
|
minWireVersion: 0
|
|
maxWireVersion: 6
|
|
outcome:
|
|
servers:
|
|
"a:27017":
|
|
type: "RSOther"
|
|
setName: "rs"
|
|
|
|
"b:27017":
|
|
type: Unknown
|
|
|
|
"c:27017":
|
|
type: Unknown
|
|
topologyType: "ReplicaSetNoPrimary"
|
|
logicalSessionTimeoutMinutes: ~
|
|
setName: "rs"
|
|
|
|
# Phase 2 - c says it's a standalone, is removed
|
|
- responses:
|
|
-
|
|
- "c:27017"
|
|
- ok: 1
|
|
helloOk: true
|
|
isWritablePrimary: true
|
|
minWireVersion: 0
|
|
maxWireVersion: 6
|
|
outcome:
|
|
servers:
|
|
"a:27017":
|
|
type: "RSOther"
|
|
setName: "rs"
|
|
|
|
"b:27017":
|
|
type: Unknown
|
|
topologyType: "ReplicaSetNoPrimary"
|
|
logicalSessionTimeoutMinutes: ~
|
|
setName: "rs"
|
|
|
|
# Phase 3 - response from a is repeated, and must be processed; c added again
|
|
- responses:
|
|
-
|
|
- "a:27017"
|
|
- ok: 1
|
|
helloOk: true
|
|
isWritablePrimary: false
|
|
secondary: true
|
|
hidden: true
|
|
hosts: ["a:27017", "c:27017"]
|
|
setName: "rs"
|
|
minWireVersion: 0
|
|
maxWireVersion: 6
|
|
outcome:
|
|
servers:
|
|
"a:27017":
|
|
type: "RSOther"
|
|
setName: "rs"
|
|
|
|
"b:27017":
|
|
type: Unknown
|
|
|
|
"c:27017":
|
|
type: Unknown
|
|
topologyType: "ReplicaSetNoPrimary"
|
|
logicalSessionTimeoutMinutes: ~
|
|
setName: "rs"
|
|
|
|
# Phase 4 - c is now a primary
|
|
- responses:
|
|
-
|
|
- "c:27017"
|
|
- ok: 1
|
|
helloOk: true
|
|
isWritablePrimary: true
|
|
hosts: ["a:27017", "c:27017"]
|
|
setName: "rs"
|
|
minWireVersion: 0
|
|
maxWireVersion: 6
|
|
outcome:
|
|
servers:
|
|
"a:27017":
|
|
type: "RSOther"
|
|
setName: "rs"
|
|
|
|
"c:27017":
|
|
type: RSPrimary
|
|
setName: rs
|
|
topologyType: "ReplicaSetWithPrimary"
|
|
logicalSessionTimeoutMinutes: ~
|
|
setName: "rs"
|