mongo 2.0.5 → 2.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/lib/mongo/auth/cr/conversation.rb +0 -1
- data/lib/mongo/client.rb +19 -5
- data/lib/mongo/cluster.rb +84 -16
- data/lib/mongo/cluster/topology.rb +3 -4
- data/lib/mongo/cluster/topology/replica_set.rb +75 -0
- data/lib/mongo/cluster/topology/sharded.rb +60 -0
- data/lib/mongo/cluster/topology/single.rb +51 -0
- data/lib/mongo/cluster/topology/unknown.rb +62 -0
- data/lib/mongo/error/invalid_bulk_operation.rb +2 -1
- data/lib/mongo/event.rb +9 -9
- data/lib/mongo/event/{server_added.rb → description_changed.rb} +6 -5
- data/lib/mongo/event/{server_removed.rb → standalone_discovered.rb} +15 -15
- data/lib/mongo/operation/aggregate.rb +6 -5
- data/lib/mongo/operation/command.rb +5 -6
- data/lib/mongo/operation/kill_cursors.rb +3 -2
- data/lib/mongo/operation/map_reduce.rb +6 -5
- data/lib/mongo/operation/read/collections_info.rb +5 -4
- data/lib/mongo/operation/read/get_more.rb +8 -7
- data/lib/mongo/operation/read/indexes.rb +4 -3
- data/lib/mongo/operation/read/list_collections.rb +5 -4
- data/lib/mongo/operation/read/list_indexes.rb +7 -6
- data/lib/mongo/operation/read/query.rb +8 -7
- data/lib/mongo/operation/read_preferrable.rb +6 -2
- data/lib/mongo/operation/write/bulk/bulk_delete.rb +13 -12
- data/lib/mongo/operation/write/bulk/bulk_insert.rb +10 -9
- data/lib/mongo/operation/write/bulk/bulk_insert/result.rb +2 -2
- data/lib/mongo/operation/write/bulk/bulk_update.rb +12 -11
- data/lib/mongo/operation/write/create_index.rb +8 -7
- data/lib/mongo/operation/write/create_user.rb +4 -3
- data/lib/mongo/operation/write/delete.rb +13 -12
- data/lib/mongo/operation/write/drop_index.rb +6 -5
- data/lib/mongo/operation/write/insert.rb +8 -7
- data/lib/mongo/operation/write/insert/result.rb +1 -1
- data/lib/mongo/operation/write/remove_user.rb +4 -3
- data/lib/mongo/operation/write/update.rb +10 -9
- data/lib/mongo/operation/write/update_user.rb +4 -3
- data/lib/mongo/server.rb +8 -15
- data/lib/mongo/server/context.rb +2 -2
- data/lib/mongo/server/description.rb +65 -3
- data/lib/mongo/server/description/features.rb +2 -1
- data/lib/mongo/server/description/inspector.rb +5 -5
- data/lib/mongo/server/description/inspector/{server_added.rb → description_changed.rb} +3 -5
- data/lib/mongo/server/description/inspector/{server_removed.rb → standalone_discovered.rb} +12 -15
- data/lib/mongo/version.rb +1 -1
- data/spec/mongo/auth/cr_spec.rb +1 -1
- data/spec/mongo/auth/ldap_spec.rb +1 -1
- data/spec/mongo/auth/scram_spec.rb +1 -1
- data/spec/mongo/auth/x509_spec.rb +1 -1
- data/spec/mongo/client_spec.rb +4 -0
- data/spec/mongo/cluster/topology/replica_set_spec.rb +254 -4
- data/spec/mongo/cluster/topology/sharded_spec.rb +70 -19
- data/spec/mongo/cluster/topology/single_spec.rb +25 -4
- data/spec/mongo/cluster/topology/unknown_spec.rb +167 -0
- data/spec/mongo/cluster/topology_spec.rb +6 -6
- data/spec/mongo/cluster_spec.rb +179 -1
- data/spec/mongo/operation/read_preferrable_spec.rb +81 -28
- data/spec/mongo/operation/write/bulk/bulk_delete_spec.rb +1 -0
- data/spec/mongo/server/connection_pool_spec.rb +10 -10
- data/spec/mongo/server/connection_spec.rb +1 -1
- data/spec/mongo/server/description/features_spec.rb +23 -3
- data/spec/mongo/server/description/inspector/description_changed_spec.rb +78 -0
- data/spec/mongo/server/description_spec.rb +238 -0
- data/spec/mongo/server/monitor_spec.rb +1 -1
- data/spec/mongo/server_discovery_and_monitoring_spec.rb +20 -4
- data/spec/mongo/server_selection_spec.rb +2 -2
- data/spec/mongo/server_spec.rb +12 -8
- data/spec/support/authorization.rb +8 -8
- data/spec/support/sdam/rs/discover_passives.yml +36 -0
- data/spec/support/sdam/rs/new_primary_wrong_set_name.yml +2 -2
- data/spec/support/sdam/rs/primary_becomes_standalone.yml +1 -1
- data/spec/support/sdam/rs/primary_changes_set_name.yml +2 -2
- data/spec/support/sdam/rs/primary_disconnect.yml +1 -1
- data/spec/support/sdam/rs/primary_wrong_set_name.yml +1 -1
- data/spec/support/sdam/rs/secondary_wrong_set_name.yml +1 -1
- data/spec/support/sdam/rs/secondary_wrong_set_name_with_primary.yml +2 -2
- data/spec/support/sdam/sharded/single_mongos.yml +33 -0
- data/spec/support/shared/operation.rb +12 -4
- data/spec/support/shared/server_selector.rb +1 -1
- metadata +12 -10
- metadata.gz.sig +0 -0
- data/spec/mongo/server/description/inspector/server_added_spec.rb +0 -92
- data/spec/mongo/server/description/inspector/server_removed_spec.rb +0 -95
@@ -32,10 +32,11 @@ describe 'Server Discovery and Monitoring' do
|
|
32
32
|
# @since 2.0.0
|
33
33
|
class Mongo::Server
|
34
34
|
|
35
|
-
# The
|
35
|
+
# The constructor keeps the same API, but does not instantiate a
|
36
36
|
# monitor and run it.
|
37
|
-
def initialize(address, event_listeners, options = {})
|
37
|
+
def initialize(address, cluster, event_listeners, options = {})
|
38
38
|
@address = address
|
39
|
+
@cluster = cluster
|
39
40
|
@options = options.freeze
|
40
41
|
@monitor = Monitor.new(address, event_listeners, options)
|
41
42
|
end
|
@@ -58,8 +59,9 @@ describe 'Server Discovery and Monitoring' do
|
|
58
59
|
class Mongo::Server
|
59
60
|
|
60
61
|
# Returns the constructor to its original implementation.
|
61
|
-
def initialize(address, event_listeners, options = {})
|
62
|
+
def initialize(address, cluster, event_listeners, options = {})
|
62
63
|
@address = address
|
64
|
+
@cluster = cluster
|
63
65
|
@options = options.freeze
|
64
66
|
@monitor = Monitor.new(address, event_listeners, options)
|
65
67
|
@monitor.scan!
|
@@ -90,17 +92,27 @@ describe 'Server Discovery and Monitoring' do
|
|
90
92
|
context("Phase: #{index + 1}") do
|
91
93
|
|
92
94
|
phase.responses.each do |response|
|
93
|
-
|
94
95
|
before do
|
95
96
|
# For each response in the phase, we need to change that server's
|
96
97
|
# description.
|
97
98
|
server = find_server(@client, response.address)
|
99
|
+
server = Mongo::Server.new(Mongo::Address.new(response.address), @client.cluster,
|
100
|
+
@client.cluster.send(:event_listeners), @client.cluster.options) unless server
|
98
101
|
monitor = server.instance_variable_get(:@monitor)
|
99
102
|
description = monitor.inspector.run(server.description, response.ismaster, 0.5)
|
100
103
|
monitor.instance_variable_set(:@description, description)
|
101
104
|
end
|
102
105
|
end
|
103
106
|
|
107
|
+
let(:cluster_addresses) do
|
108
|
+
@client.cluster.instance_variable_get(:@servers).
|
109
|
+
collect(&:address).collect(&:to_s).uniq.sort
|
110
|
+
end
|
111
|
+
|
112
|
+
let(:phase_addresses) do
|
113
|
+
phase.outcome.servers.keys.sort
|
114
|
+
end
|
115
|
+
|
104
116
|
it "sets the cluster topology to #{phase.outcome.topology_type}" do
|
105
117
|
expect(@client.cluster).to be_topology(phase.outcome.topology_type)
|
106
118
|
end
|
@@ -109,6 +121,10 @@ describe 'Server Discovery and Monitoring' do
|
|
109
121
|
expect(@client.cluster.replica_set_name).to eq(phase.outcome.set_name)
|
110
122
|
end
|
111
123
|
|
124
|
+
it "has the expected servers in the cluster" do
|
125
|
+
expect(cluster_addresses).to eq(phase_addresses)
|
126
|
+
end
|
127
|
+
|
112
128
|
phase.outcome.servers.each do |uri, server|
|
113
129
|
|
114
130
|
it "sets #{uri} to #{server['type']}" do
|
@@ -26,7 +26,7 @@ describe 'Server Selection' do
|
|
26
26
|
let(:candidate_servers) do
|
27
27
|
spec.candidate_servers.collect do |server|
|
28
28
|
address = Mongo::Address.new(server['address'])
|
29
|
-
Mongo::Server.new(address, Mongo::Event::Listeners.new, TEST_OPTIONS).tap do |s|
|
29
|
+
Mongo::Server.new(address, double('cluster'), Mongo::Event::Listeners.new, TEST_OPTIONS).tap do |s|
|
30
30
|
allow(s).to receive(:average_round_trip_time).and_return(server['avg_rtt_ms'])
|
31
31
|
allow(s).to receive(:tags).and_return(server['tags'])
|
32
32
|
allow(s).to receive(:secondary?).and_return(server['type'] == 'RSSecondary')
|
@@ -38,7 +38,7 @@ describe 'Server Selection' do
|
|
38
38
|
let(:in_latency_window) do
|
39
39
|
spec.in_latency_window.collect do |server|
|
40
40
|
address = Mongo::Address.new(server['address'])
|
41
|
-
Mongo::Server.new(address, Mongo::Event::Listeners.new, TEST_OPTIONS).tap do |s|
|
41
|
+
Mongo::Server.new(address, double('cluster'), Mongo::Event::Listeners.new, TEST_OPTIONS).tap do |s|
|
42
42
|
allow(s).to receive(:average_round_trip_time).and_return(server['avg_rtt_ms'])
|
43
43
|
allow(s).to receive(:tags).and_return(server['tags'])
|
44
44
|
end
|
data/spec/mongo/server_spec.rb
CHANGED
@@ -2,6 +2,10 @@ require 'spec_helper'
|
|
2
2
|
|
3
3
|
describe Mongo::Server do
|
4
4
|
|
5
|
+
let(:cluster) do
|
6
|
+
double('cluster')
|
7
|
+
end
|
8
|
+
|
5
9
|
let(:listeners) do
|
6
10
|
Mongo::Event::Listeners.new
|
7
11
|
end
|
@@ -13,7 +17,7 @@ describe Mongo::Server do
|
|
13
17
|
describe '#==' do
|
14
18
|
|
15
19
|
let(:server) do
|
16
|
-
described_class.new(address, listeners, TEST_OPTIONS)
|
20
|
+
described_class.new(address, cluster, listeners, TEST_OPTIONS)
|
17
21
|
end
|
18
22
|
|
19
23
|
context 'when the other is not a server' do
|
@@ -32,7 +36,7 @@ describe Mongo::Server do
|
|
32
36
|
context 'when the addresses match' do
|
33
37
|
|
34
38
|
let(:other) do
|
35
|
-
described_class.new(address, listeners, TEST_OPTIONS)
|
39
|
+
described_class.new(address, cluster, listeners, TEST_OPTIONS)
|
36
40
|
end
|
37
41
|
|
38
42
|
it 'returns true' do
|
@@ -47,7 +51,7 @@ describe Mongo::Server do
|
|
47
51
|
end
|
48
52
|
|
49
53
|
let(:other) do
|
50
|
-
described_class.new(other_address, listeners, TEST_OPTIONS)
|
54
|
+
described_class.new(other_address, cluster, listeners, TEST_OPTIONS)
|
51
55
|
end
|
52
56
|
|
53
57
|
it 'returns false' do
|
@@ -60,7 +64,7 @@ describe Mongo::Server do
|
|
60
64
|
describe '#context' do
|
61
65
|
|
62
66
|
let(:server) do
|
63
|
-
described_class.new(address, listeners, TEST_OPTIONS)
|
67
|
+
described_class.new(address, cluster, listeners, TEST_OPTIONS)
|
64
68
|
end
|
65
69
|
|
66
70
|
let(:context) do
|
@@ -75,7 +79,7 @@ describe Mongo::Server do
|
|
75
79
|
describe '#disconnect!' do
|
76
80
|
|
77
81
|
let(:server) do
|
78
|
-
described_class.new(address, listeners, TEST_OPTIONS)
|
82
|
+
described_class.new(address, cluster, listeners, TEST_OPTIONS)
|
79
83
|
end
|
80
84
|
|
81
85
|
it 'stops the monitor instance' do
|
@@ -87,7 +91,7 @@ describe Mongo::Server do
|
|
87
91
|
describe '#initialize' do
|
88
92
|
|
89
93
|
let(:server) do
|
90
|
-
described_class.new(address, listeners, TEST_OPTIONS.merge(:heartbeat_frequency => 5))
|
94
|
+
described_class.new(address, cluster, listeners, TEST_OPTIONS.merge(:heartbeat_frequency => 5))
|
91
95
|
end
|
92
96
|
|
93
97
|
it 'sets the address host' do
|
@@ -106,7 +110,7 @@ describe Mongo::Server do
|
|
106
110
|
describe '#pool' do
|
107
111
|
|
108
112
|
let(:server) do
|
109
|
-
described_class.new(address, listeners, TEST_OPTIONS)
|
113
|
+
described_class.new(address, cluster, listeners, TEST_OPTIONS)
|
110
114
|
end
|
111
115
|
|
112
116
|
let(:pool) do
|
@@ -121,7 +125,7 @@ describe Mongo::Server do
|
|
121
125
|
describe '#scan!' do
|
122
126
|
|
123
127
|
let(:server) do
|
124
|
-
described_class.new(address, listeners, TEST_OPTIONS)
|
128
|
+
described_class.new(address, cluster, listeners, TEST_OPTIONS)
|
125
129
|
end
|
126
130
|
|
127
131
|
it 'forces a scan on the monitor' do
|
@@ -36,14 +36,14 @@ DEFAULT_ADDRESS = ADDRESSES.first
|
|
36
36
|
# The topology type.
|
37
37
|
#
|
38
38
|
# @since 2.0.0
|
39
|
-
CONNECT = ENV['RS_ENABLED'] == 'true' ? :replica_set
|
40
|
-
|
41
|
-
|
39
|
+
CONNECT = ENV['RS_ENABLED'] == 'true' ? { connect: :replica_set, replica_set: ENV['RS_NAME'] } :
|
40
|
+
ENV['SHARDED_ENABLED'] == 'true' ? { connect: :sharded } :
|
41
|
+
{ connect: :direct }
|
42
42
|
|
43
43
|
# The write concern to use in the tests.
|
44
44
|
#
|
45
45
|
# @since 2.0.0
|
46
|
-
WRITE_CONCERN =
|
46
|
+
WRITE_CONCERN = CONNECT[:connect] == :replica_set ? { w: ADDRESSES.size } : { w: 1 }
|
47
47
|
|
48
48
|
# Whether to use SSL.
|
49
49
|
#
|
@@ -53,10 +53,10 @@ SSL = ENV['SSL_ENABLED'] == 'true'
|
|
53
53
|
# Options for test suite clients.
|
54
54
|
#
|
55
55
|
# @since 2.0.3
|
56
|
-
TEST_OPTIONS =
|
57
|
-
|
58
|
-
|
59
|
-
|
56
|
+
TEST_OPTIONS = CONNECT.merge(max_pool_size: 1,
|
57
|
+
write: WRITE_CONCERN,
|
58
|
+
ssl: SSL,
|
59
|
+
server_selection_timeout: 3)
|
60
60
|
|
61
61
|
# The root user name.
|
62
62
|
#
|
@@ -34,6 +34,42 @@ phases: [
|
|
34
34
|
}
|
35
35
|
},
|
36
36
|
|
37
|
+
topologyType: "ReplicaSetWithPrimary",
|
38
|
+
setName: "rs"
|
39
|
+
}
|
40
|
+
},
|
41
|
+
{
|
42
|
+
responses: [
|
43
|
+
|
44
|
+
["b:27017", {
|
45
|
+
|
46
|
+
ok: 1,
|
47
|
+
ismaster: false,
|
48
|
+
secondary: true,
|
49
|
+
passive: true,
|
50
|
+
hosts: ["a:27017"],
|
51
|
+
passives: ["b:27017"],
|
52
|
+
setName: "rs"
|
53
|
+
}]
|
54
|
+
],
|
55
|
+
|
56
|
+
outcome: {
|
57
|
+
|
58
|
+
servers: {
|
59
|
+
|
60
|
+
"a:27017": {
|
61
|
+
|
62
|
+
type: "RSPrimary",
|
63
|
+
setName: "rs"
|
64
|
+
},
|
65
|
+
|
66
|
+
"b:27017": {
|
67
|
+
|
68
|
+
type: "RSSecondary",
|
69
|
+
setName: "rs"
|
70
|
+
}
|
71
|
+
},
|
72
|
+
|
37
73
|
topologyType: "ReplicaSetWithPrimary",
|
38
74
|
setName: "rs"
|
39
75
|
}
|
@@ -12,7 +12,7 @@ phases: [
|
|
12
12
|
|
13
13
|
ok: 1,
|
14
14
|
ismaster: true,
|
15
|
-
hosts: ["a", "b"],
|
15
|
+
hosts: ["a:27017", "b:27017"],
|
16
16
|
setName: "rs"
|
17
17
|
}]
|
18
18
|
],
|
@@ -48,7 +48,7 @@ phases: [
|
|
48
48
|
|
49
49
|
ok: 1,
|
50
50
|
ismaster: true,
|
51
|
-
hosts: ["a"],
|
51
|
+
hosts: ["a:27017"],
|
52
52
|
setName: "wrong"
|
53
53
|
}]
|
54
54
|
],
|
@@ -12,7 +12,7 @@ phases: [
|
|
12
12
|
|
13
13
|
ok: 1,
|
14
14
|
ismaster: true,
|
15
|
-
hosts: ["a"],
|
15
|
+
hosts: ["a:27017"],
|
16
16
|
setName: "rs"
|
17
17
|
}]
|
18
18
|
],
|
@@ -41,7 +41,7 @@ phases: [
|
|
41
41
|
|
42
42
|
ok: 1,
|
43
43
|
ismaster: true,
|
44
|
-
hosts: ["a"],
|
44
|
+
hosts: ["a:27017"],
|
45
45
|
setName: "wrong"
|
46
46
|
}]
|
47
47
|
],
|
@@ -11,7 +11,7 @@ phases: [
|
|
11
11
|
|
12
12
|
ok: 1,
|
13
13
|
ismaster: true,
|
14
|
-
hosts: ["a", "b"],
|
14
|
+
hosts: ["a:27017", "b:27017"],
|
15
15
|
setName: "rs"
|
16
16
|
}]
|
17
17
|
],
|
@@ -46,7 +46,7 @@ phases: [
|
|
46
46
|
ok: 1,
|
47
47
|
ismaster: false,
|
48
48
|
secondary: true,
|
49
|
-
hosts: ["a", "b"],
|
49
|
+
hosts: ["a:27017", "b:27017"],
|
50
50
|
setName: "wrong"
|
51
51
|
}]
|
52
52
|
],
|
@@ -0,0 +1,33 @@
|
|
1
|
+
description: "Single mongos"
|
2
|
+
|
3
|
+
uri: "mongodb://a"
|
4
|
+
|
5
|
+
phases: [
|
6
|
+
|
7
|
+
{
|
8
|
+
responses: [
|
9
|
+
|
10
|
+
["a:27017", {
|
11
|
+
|
12
|
+
ok: 1,
|
13
|
+
ismaster: true,
|
14
|
+
msg: "isdbgrid"
|
15
|
+
}]
|
16
|
+
],
|
17
|
+
|
18
|
+
outcome: {
|
19
|
+
|
20
|
+
servers: {
|
21
|
+
|
22
|
+
"a:27017": {
|
23
|
+
|
24
|
+
type: "Mongos",
|
25
|
+
setName:
|
26
|
+
}
|
27
|
+
},
|
28
|
+
|
29
|
+
topologyType: "Sharded",
|
30
|
+
setName:
|
31
|
+
}
|
32
|
+
}
|
33
|
+
]
|
@@ -5,6 +5,10 @@ shared_context 'operation' do
|
|
5
5
|
let(:write_concern) { Mongo::WriteConcern.get(:w => 1) }
|
6
6
|
let(:options) { {} }
|
7
7
|
|
8
|
+
let(:cluster_double) do
|
9
|
+
double('cluster')
|
10
|
+
end
|
11
|
+
|
8
12
|
# Server doubles
|
9
13
|
let(:secondary_server) do
|
10
14
|
double('secondary_server').tap do |s|
|
@@ -43,7 +47,8 @@ shared_context 'operation' do
|
|
43
47
|
allow(cxt).to receive(:primary?) { true }
|
44
48
|
allow(cxt).to receive(:secondary?) { false }
|
45
49
|
allow(cxt).to receive(:standalone?) { false }
|
46
|
-
allow(cxt).to receive(:
|
50
|
+
allow(cxt).to receive(:cluster) { cluster_double }
|
51
|
+
allow(cluster_double).to receive(:single?) { false }
|
47
52
|
end
|
48
53
|
end
|
49
54
|
let(:secondary_context) do
|
@@ -55,7 +60,8 @@ shared_context 'operation' do
|
|
55
60
|
allow(cxt).to receive(:secondary?) { true }
|
56
61
|
allow(cxt).to receive(:primary?) { false }
|
57
62
|
allow(cxt).to receive(:standalone?) { false }
|
58
|
-
allow(cxt).to receive(:
|
63
|
+
allow(cxt).to receive(:cluster) { cluster_double }
|
64
|
+
allow(cluster_double).to receive(:single?) { false }
|
59
65
|
end
|
60
66
|
end
|
61
67
|
let(:secondary_context_slave) do
|
@@ -67,7 +73,8 @@ shared_context 'operation' do
|
|
67
73
|
allow(cxt).to receive(:secondary?) { true }
|
68
74
|
allow(cxt).to receive(:primary?) { false }
|
69
75
|
allow(cxt).to receive(:standalone?) { false }
|
70
|
-
allow(cxt).to receive(:
|
76
|
+
allow(cxt).to receive(:cluster) { cluster_double }
|
77
|
+
allow(cluster_double).to receive(:single?) { true }
|
71
78
|
end
|
72
79
|
end
|
73
80
|
let(:primary_context_2_4_version) do
|
@@ -78,7 +85,8 @@ shared_context 'operation' do
|
|
78
85
|
allow(cxt).to receive(:primary?) { true }
|
79
86
|
allow(cxt).to receive(:secondary?) { false }
|
80
87
|
allow(cxt).to receive(:standalone?) { false }
|
81
|
-
allow(cxt).to receive(:
|
88
|
+
allow(cxt).to receive(:cluster) { cluster_double }
|
89
|
+
allow(cluster_double).to receive(:single?) { false }
|
82
90
|
allow(cxt).to receive(:features) { features_2_4 }
|
83
91
|
end
|
84
92
|
end
|
@@ -13,7 +13,7 @@ def server(mode, options = {})
|
|
13
13
|
listeners = Mongo::Event::Listeners.new
|
14
14
|
address = Mongo::Address.new('127.0.0.1:27017')
|
15
15
|
|
16
|
-
server = Mongo::Server.new(address, listeners, TEST_OPTIONS)
|
16
|
+
server = Mongo::Server.new(address, double('cluster'), listeners, TEST_OPTIONS)
|
17
17
|
description = Mongo::Server::Description.new(address, ismaster, average_round_trip_time)
|
18
18
|
server.tap do |s|
|
19
19
|
allow(s).to receive(:description).and_return(description)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tyler Brock
|
@@ -32,7 +32,7 @@ cert_chain:
|
|
32
32
|
o2UXDbWtz5PqoFd8EgNJAn3+BG1pwC9S9pVFG3WPucfAx/bE8iq/vvchHei5Y/Vo
|
33
33
|
aAz5f/hY4zFeYWvGDBHYEXE1rTN2hhMSyJscPcFbmz0=
|
34
34
|
-----END CERTIFICATE-----
|
35
|
-
date: 2015-06-
|
35
|
+
date: 2015-06-24 00:00:00.000000000 Z
|
36
36
|
dependencies:
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: bson
|
@@ -129,11 +129,11 @@ files:
|
|
129
129
|
- lib/mongo/error/socket_timeout_error.rb
|
130
130
|
- lib/mongo/error/unsupported_features.rb
|
131
131
|
- lib/mongo/event.rb
|
132
|
+
- lib/mongo/event/description_changed.rb
|
132
133
|
- lib/mongo/event/listeners.rb
|
133
134
|
- lib/mongo/event/primary_elected.rb
|
134
135
|
- lib/mongo/event/publisher.rb
|
135
|
-
- lib/mongo/event/
|
136
|
-
- lib/mongo/event/server_removed.rb
|
136
|
+
- lib/mongo/event/standalone_discovered.rb
|
137
137
|
- lib/mongo/event/subscriber.rb
|
138
138
|
- lib/mongo/grid.rb
|
139
139
|
- lib/mongo/grid/file.rb
|
@@ -219,9 +219,9 @@ files:
|
|
219
219
|
- lib/mongo/server/description.rb
|
220
220
|
- lib/mongo/server/description/features.rb
|
221
221
|
- lib/mongo/server/description/inspector.rb
|
222
|
+
- lib/mongo/server/description/inspector/description_changed.rb
|
222
223
|
- lib/mongo/server/description/inspector/primary_elected.rb
|
223
|
-
- lib/mongo/server/description/inspector/
|
224
|
-
- lib/mongo/server/description/inspector/server_removed.rb
|
224
|
+
- lib/mongo/server/description/inspector/standalone_discovered.rb
|
225
225
|
- lib/mongo/server/monitor.rb
|
226
226
|
- lib/mongo/server/monitor/connection.rb
|
227
227
|
- lib/mongo/server_selector.rb
|
@@ -259,6 +259,7 @@ files:
|
|
259
259
|
- spec/mongo/cluster/topology/replica_set_spec.rb
|
260
260
|
- spec/mongo/cluster/topology/sharded_spec.rb
|
261
261
|
- spec/mongo/cluster/topology/single_spec.rb
|
262
|
+
- spec/mongo/cluster/topology/unknown_spec.rb
|
262
263
|
- spec/mongo/cluster/topology_spec.rb
|
263
264
|
- spec/mongo/cluster_spec.rb
|
264
265
|
- spec/mongo/collection/view/aggregation_spec.rb
|
@@ -320,9 +321,8 @@ files:
|
|
320
321
|
- spec/mongo/server/connection_pool_spec.rb
|
321
322
|
- spec/mongo/server/connection_spec.rb
|
322
323
|
- spec/mongo/server/description/features_spec.rb
|
324
|
+
- spec/mongo/server/description/inspector/description_changed_spec.rb
|
323
325
|
- spec/mongo/server/description/inspector/primary_elected_spec.rb
|
324
|
-
- spec/mongo/server/description/inspector/server_added_spec.rb
|
325
|
-
- spec/mongo/server/description/inspector/server_removed_spec.rb
|
326
326
|
- spec/mongo/server/description_spec.rb
|
327
327
|
- spec/mongo/server/monitor_spec.rb
|
328
328
|
- spec/mongo/server_discovery_and_monitoring_spec.rb
|
@@ -393,6 +393,7 @@ files:
|
|
393
393
|
- spec/support/sdam/sharded/multiple_mongoses.yml
|
394
394
|
- spec/support/sdam/sharded/non_mongos_removed.yml
|
395
395
|
- spec/support/sdam/sharded/normalize_uri_case.yml
|
396
|
+
- spec/support/sdam/sharded/single_mongos.yml
|
396
397
|
- spec/support/sdam/single/direct_connection_external_ip.yml
|
397
398
|
- spec/support/sdam/single/direct_connection_mongos.yml
|
398
399
|
- spec/support/sdam/single/direct_connection_rsarbiter.yml
|
@@ -483,6 +484,7 @@ test_files:
|
|
483
484
|
- spec/mongo/cluster/topology/replica_set_spec.rb
|
484
485
|
- spec/mongo/cluster/topology/sharded_spec.rb
|
485
486
|
- spec/mongo/cluster/topology/single_spec.rb
|
487
|
+
- spec/mongo/cluster/topology/unknown_spec.rb
|
486
488
|
- spec/mongo/cluster/topology_spec.rb
|
487
489
|
- spec/mongo/cluster_spec.rb
|
488
490
|
- spec/mongo/collection/view/aggregation_spec.rb
|
@@ -544,9 +546,8 @@ test_files:
|
|
544
546
|
- spec/mongo/server/connection_pool_spec.rb
|
545
547
|
- spec/mongo/server/connection_spec.rb
|
546
548
|
- spec/mongo/server/description/features_spec.rb
|
549
|
+
- spec/mongo/server/description/inspector/description_changed_spec.rb
|
547
550
|
- spec/mongo/server/description/inspector/primary_elected_spec.rb
|
548
|
-
- spec/mongo/server/description/inspector/server_added_spec.rb
|
549
|
-
- spec/mongo/server/description/inspector/server_removed_spec.rb
|
550
551
|
- spec/mongo/server/description_spec.rb
|
551
552
|
- spec/mongo/server/monitor_spec.rb
|
552
553
|
- spec/mongo/server_discovery_and_monitoring_spec.rb
|
@@ -617,6 +618,7 @@ test_files:
|
|
617
618
|
- spec/support/sdam/sharded/multiple_mongoses.yml
|
618
619
|
- spec/support/sdam/sharded/non_mongos_removed.yml
|
619
620
|
- spec/support/sdam/sharded/normalize_uri_case.yml
|
621
|
+
- spec/support/sdam/sharded/single_mongos.yml
|
620
622
|
- spec/support/sdam/single/direct_connection_external_ip.yml
|
621
623
|
- spec/support/sdam/single/direct_connection_mongos.yml
|
622
624
|
- spec/support/sdam/single/direct_connection_rsarbiter.yml
|