mongo 1.8.3 → 1.8.4.rc0

Sign up to get free protection for your applications and to get access to all the features.
@@ -68,7 +68,7 @@ class BasicTest < Test::Unit::TestCase
68
68
  assert_equal 2, client.secondaries.length
69
69
  assert_equal 2, client.secondary_pools.length
70
70
  assert_equal @rs.repl_set_name, client.replica_set_name
71
- assert client.secondary_pools.include?(client.read_pool(:secondary))
71
+ assert client.secondary_pools.include?(client.read_pool({:mode => :secondary}))
72
72
  assert_equal 90, client.refresh_interval
73
73
  assert_equal client.refresh_mode, false
74
74
  client.close
@@ -0,0 +1,41 @@
1
+ require 'test_helper'
2
+
3
+ class ReplicaSetPinningTest < Test::Unit::TestCase
4
+ def setup
5
+ ensure_cluster(:rs)
6
+ @client = MongoReplicaSetClient.new(@rs.repl_set_seeds, :name => @rs.repl_set_name)
7
+ @db = @client.db(MONGO_TEST_DB)
8
+ @coll = @db.collection("test-sets")
9
+ @coll.insert({:a => 1})
10
+ end
11
+
12
+ def test_unpinning
13
+ # pin primary
14
+ @coll.find_one
15
+ assert_equal @client.pinned_pool[:pool], @client.primary_pool
16
+
17
+ # pin secondary
18
+ @coll.find_one({}, :read => :secondary_preferred)
19
+ assert @client.secondary_pools.include? @client.pinned_pool[:pool]
20
+
21
+ # repin primary
22
+ @coll.find_one({}, :read => :primary_preferred)
23
+ assert_equal @client.pinned_pool[:pool], @client.primary_pool
24
+ end
25
+
26
+ def test_pinned_pool_is_local_to_thread
27
+ threads = []
28
+ 30.times do |i|
29
+ threads << Thread.new do
30
+ if i % 2 == 0
31
+ @coll.find_one({}, :read => :secondary_preferred)
32
+ assert @client.secondary_pools.include? @client.pinned_pool[:pool]
33
+ else
34
+ @coll.find_one({}, :read => :primary_preferred)
35
+ assert_equal @client.pinned_pool[:pool], @client.primary_pool
36
+ end
37
+ end
38
+ end
39
+ threads.each(&:join)
40
+ end
41
+ end
File without changes
File without changes
@@ -128,7 +128,7 @@ class ClientTest < Test::Unit::TestCase
128
128
  should "parse a uri with a hyphen & underscore in the username or password" do
129
129
  @client = MongoClient.from_uri("mongodb://hyphen-user_name:p-s_s@localhost:27017/db", :connect => false)
130
130
  assert_equal ['localhost', 27017], @client.host_port
131
- auth_hash = { 'db_name' => 'db', 'username' => 'hyphen-user_name', "password" => 'p-s_s' }
131
+ auth_hash = { :db_name => 'db', :username => 'hyphen-user_name', :password => 'p-s_s' }
132
132
  assert_equal auth_hash, @client.auths[0]
133
133
  end
134
134
 
@@ -211,7 +211,7 @@ class ClientTest < Test::Unit::TestCase
211
211
  ENV['MONGODB_URI'] = "mongodb://hyphen-user_name:p-s_s@localhost:27017/db?connect=false"
212
212
  @client = MongoClient.new
213
213
  assert_equal ['localhost', 27017], @client.host_port
214
- auth_hash = { 'db_name' => 'db', 'username' => 'hyphen-user_name', "password" => 'p-s_s' }
214
+ auth_hash = { :db_name => 'db', :username => 'hyphen-user_name', :password => 'p-s_s' }
215
215
  assert_equal auth_hash, @client.auths[0]
216
216
  end
217
217
 
@@ -106,7 +106,7 @@ class CollectionTest < Test::Unit::TestCase
106
106
  @coll.ensure_index [["x", Mongo::DESCENDING]]
107
107
  end
108
108
 
109
- should "call generate_indexes for a new direction on the same field for ensure_index" do
109
+ should "call generate_indexes for a new type on the same field for ensure_index" do
110
110
  @client = MongoClient.new('localhost', 27017, :logger => @logger, :connect => false)
111
111
  @db = @client['testing']
112
112
  @coll = @db.collection('books')
@@ -122,7 +122,7 @@ class ConnectionTest < Test::Unit::TestCase
122
122
  should "parse a uri with a hyphen & underscore in the username or password" do
123
123
  @connection = Mongo::Connection.from_uri("mongodb://hyphen-user_name:p-s_s@localhost:27017/db", :connect => false)
124
124
  assert_equal ['localhost', 27017], @connection.host_port
125
- auth_hash = { 'db_name' => 'db', 'username' => 'hyphen-user_name', "password" => 'p-s_s' }
125
+ auth_hash = { :db_name => 'db', :username => 'hyphen-user_name', :password => 'p-s_s' }
126
126
  assert_equal auth_hash, @connection.auths[0]
127
127
  end
128
128
 
@@ -205,7 +205,7 @@ class ConnectionTest < Test::Unit::TestCase
205
205
  ENV['MONGODB_URI'] = "mongodb://hyphen-user_name:p-s_s@localhost:27017/db?connect=false"
206
206
  @connection = Mongo::Connection.new
207
207
  assert_equal ['localhost', 27017], @connection.host_port
208
- auth_hash = { 'db_name' => 'db', 'username' => 'hyphen-user_name', "password" => 'p-s_s' }
208
+ auth_hash = { :db_name => 'db', :username => 'hyphen-user_name', :password => 'p-s_s' }
209
209
  assert_equal auth_hash, @connection.auths[0]
210
210
  end
211
211
 
@@ -81,7 +81,6 @@ class DBTest < Test::Unit::TestCase
81
81
  end
82
82
 
83
83
  should "raise an error if collection creation fails" do
84
- @db.expects(:collection_names).returns([])
85
84
  @db.expects(:command).returns({'ok' => 0})
86
85
  assert_raise Mongo::MongoDBError do
87
86
  @db.create_collection("foo")
File without changes
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: 1.8.3
4
+ version: 1.8.4.rc0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tyler Brock
@@ -12,28 +12,35 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain:
15
- - |
16
- -----BEGIN CERTIFICATE-----
17
- MIIDODCCAiCgAwIBAgIBADANBgkqhkiG9w0BAQUFADBCMRQwEgYDVQQDDAtkcml2
18
- ZXItcnVieTEVMBMGCgmSJomT8ixkARkWBTEwZ2VuMRMwEQYKCZImiZPyLGQBGRYD
19
- Y29tMB4XDTEzMDIwMTE0MTEzN1oXDTE0MDIwMTE0MTEzN1owQjEUMBIGA1UEAwwL
20
- ZHJpdmVyLXJ1YnkxFTATBgoJkiaJk/IsZAEZFgUxMGdlbjETMBEGCgmSJomT8ixk
21
- ARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANFdSAa8fRm1
22
- bAM9za6Z0fAH4g02bqM1NGnw8zJQrE/PFrFfY6IFCT2AsLfOwr1maVm7iU1+kdVI
23
- IQ+iI/9+E+ArJ+rbGV3dDPQ+SLl3mLT+vXjfjcxMqI2IW6UuVtt2U3Rxd4QU0kdT
24
- JxmcPYs5fDN6BgYc6XXgUjy3m+Kwha2pGctdciUOwEfOZ4RmNRlEZKCMLRHdFP8j
25
- 4WTnJSGfXDiuoXICJb5yOPOZPuaapPSNXp93QkUdsqdKC32I+KMpKKYGBQ6yisfA
26
- 5MyVPPCzLR1lP5qXVGJPnOqUAkvEUfCahg7EP9tI20qxiXrR6TSEraYhIFXL0EGY
27
- u8KAcPHm5KkCAwEAAaM5MDcwCQYDVR0TBAIwADAdBgNVHQ4EFgQUW3dZsX70mlSM
28
- CiPrZxAGA1vwfNcwCwYDVR0PBAQDAgSwMA0GCSqGSIb3DQEBBQUAA4IBAQCIa/Y6
29
- xS7YWBxkn9WP0EMnJ3pY9vef9DTmLSi/2jz8PzwlKQ89zNTrqSUD8LoQZmBqCJBt
30
- dKSQ/RUnaHJuxh8HWvWubP8EBYTuf+I1DFnRv648IF3MR1tCQumVL0XcYMvZcxBj
31
- a/p+8DomWTQqUdNbNoGywwjtVBWfDdwFV8Po1XcN/AtpILOJQd9J77INIGGCHxZo
32
- 6SOHHaNknlE9H0w6q0SVxZKZI8/+2c447V0NrHIw1Qhe0tAGJ9V1u3ky8gyxe0SM
33
- 8v7zLF2XliYbfurYIwkcXs8yPn8ggApBIy9bX6VJxRs/l2+UvqzaHIFaFy/F8/GP
34
- RNTuXsVG5NDACo7Q
35
- -----END CERTIFICATE-----
36
- date: 2013-03-04 00:00:00.000000000 Z
15
+ - !binary |-
16
+ LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURPRENDQWlDZ0F3SUJB
17
+ Z0lCQURBTkJna3Foa2lHOXcwQkFRVUZBREJDTVJRd0VnWURWUVFEREF0a2Nt
18
+ bDIKWlhJdGNuVmllVEVWTUJNR0NnbVNKb21UOGl4a0FSa1dCVEV3WjJWdU1S
19
+ TXdFUVlLQ1pJbWlaUHlMR1FCR1JZRApZMjl0TUI0WERURXpNREl3TVRFME1U
20
+ RXpOMW9YRFRFME1ESXdNVEUwTVRFek4xb3dRakVVTUJJR0ExVUVBd3dMClpI
21
+ SnBkbVZ5TFhKMVlua3hGVEFUQmdvSmtpYUprL0lzWkFFWkZnVXhNR2RsYmpF
22
+ VE1CRUdDZ21TSm9tVDhpeGsKQVJrV0EyTnZiVENDQVNJd0RRWUpLb1pJaHZj
23
+ TkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFORmRTQWE4ZlJtMQpiQU05emE2
24
+ WjBmQUg0ZzAyYnFNMU5Hbnc4ekpRckUvUEZyRmZZNklGQ1QyQXNMZk93cjFt
25
+ YVZtN2lVMStrZFZJCklRK2lJLzkrRStBckorcmJHVjNkRFBRK1NMbDNtTFQr
26
+ dlhqZmpjeE1xSTJJVzZVdVZ0dDJVM1J4ZDRRVTBrZFQKSnhtY1BZczVmRE42
27
+ QmdZYzZYWGdVankzbStLd2hhMnBHY3RkY2lVT3dFZk9aNFJtTlJsRVpLQ01M
28
+ UkhkRlA4ago0V1RuSlNHZlhEaXVvWElDSmI1eU9QT1pQdWFhcFBTTlhwOTNR
29
+ a1Vkc3FkS0MzMkkrS01wS0tZR0JRNnlpc2ZBCjVNeVZQUEN6TFIxbFA1cVhW
30
+ R0pQbk9xVUFrdkVVZkNhaGc3RVA5dEkyMHF4aVhyUjZUU0VyYVloSUZYTDBF
31
+ R1kKdThLQWNQSG01S2tDQXdFQUFhTTVNRGN3Q1FZRFZSMFRCQUl3QURBZEJn
32
+ TlZIUTRFRmdRVVczZFpzWDcwbWxTTQpDaVByWnhBR0ExdndmTmN3Q3dZRFZS
33
+ MFBCQVFEQWdTd01BMEdDU3FHU0liM0RRRUJCUVVBQTRJQkFRQ0lhL1k2CnhT
34
+ N1lXQnhrbjlXUDBFTW5KM3BZOXZlZjlEVG1MU2kvMmp6OFB6d2xLUTg5ek5U
35
+ cnFTVUQ4TG9RWm1CcUNKQnQKZEtTUS9SVW5hSEp1eGg4SFd2V3ViUDhFQllU
36
+ dWYrSTFERm5SdjY0OElGM01SMXRDUXVtVkwwWGNZTXZaY3hCagphL3ArOERv
37
+ bVdUUXFVZE5iTm9HeXd3anRWQldmRGR3RlY4UG8xWGNOL0F0cElMT0pRZDlK
38
+ NzdJTklHR0NIeFpvCjZTT0hIYU5rbmxFOUgwdzZxMFNWeFpLWkk4LysyYzQ0
39
+ N1YwTnJISXcxUWhlMHRBR0o5VjF1M2t5OGd5eGUwU00KOHY3ekxGMlhsaVli
40
+ ZnVyWUl3a2NYczh5UG44Z2dBcEJJeTliWDZWSnhScy9sMitVdnF6YUhJRmFG
41
+ eS9GOC9HUApSTlR1WHNWRzVOREFDbzdRCi0tLS0tRU5EIENFUlRJRklDQVRF
42
+ LS0tLS0K
43
+ date: 2013-03-19 00:00:00.000000000 Z
37
44
  dependencies:
38
45
  - !ruby/object:Gem::Dependency
39
46
  name: bson
@@ -41,14 +48,14 @@ dependencies:
41
48
  requirements:
42
49
  - - ~>
43
50
  - !ruby/object:Gem::Version
44
- version: 1.8.3
51
+ version: 1.8.4.rc0
45
52
  type: :runtime
46
53
  prerelease: false
47
54
  version_requirements: !ruby/object:Gem::Requirement
48
55
  requirements:
49
56
  - - ~>
50
57
  - !ruby/object:Gem::Version
51
- version: 1.8.3
58
+ version: 1.8.4.rc0
52
59
  description: A Ruby driver for MongoDB. For more information about Mongo, see http://www.mongodb.org.
53
60
  email: mongodb-dev@googlegroups.com
54
61
  executables:
@@ -135,6 +142,7 @@ files:
135
142
  - test/replica_set/count_test.rb
136
143
  - test/replica_set/cursor_test.rb
137
144
  - test/replica_set/insert_test.rb
145
+ - test/replica_set/pinning_test.rb
138
146
  - test/replica_set/query_test.rb
139
147
  - test/replica_set/read_preference_test.rb
140
148
  - test/replica_set/refresh_test.rb
@@ -160,7 +168,8 @@ files:
160
168
  - test/unit/util_test.rb
161
169
  - test/unit/write_concern_test.rb
162
170
  homepage: http://www.mongodb.org
163
- licenses: []
171
+ licenses:
172
+ - Apache License Version 2.0
164
173
  metadata: {}
165
174
  post_install_message:
166
175
  rdoc_options: []
@@ -168,17 +177,17 @@ require_paths:
168
177
  - lib
169
178
  required_ruby_version: !ruby/object:Gem::Requirement
170
179
  requirements:
171
- - - '>='
180
+ - - ! '>='
172
181
  - !ruby/object:Gem::Version
173
182
  version: '0'
174
183
  required_rubygems_version: !ruby/object:Gem::Requirement
175
184
  requirements:
176
- - - '>='
185
+ - - ! '>'
177
186
  - !ruby/object:Gem::Version
178
- version: '0'
187
+ version: 1.3.1
179
188
  requirements: []
180
189
  rubyforge_project: mongo
181
- rubygems_version: 2.0.0
190
+ rubygems_version: 2.0.3
182
191
  signing_key:
183
192
  specification_version: 4
184
193
  summary: Ruby driver for MongoDB
@@ -225,6 +234,7 @@ test_files:
225
234
  - test/replica_set/count_test.rb
226
235
  - test/replica_set/cursor_test.rb
227
236
  - test/replica_set/insert_test.rb
237
+ - test/replica_set/pinning_test.rb
228
238
  - test/replica_set/query_test.rb
229
239
  - test/replica_set/read_preference_test.rb
230
240
  - test/replica_set/refresh_test.rb
@@ -249,3 +259,4 @@ test_files:
249
259
  - test/unit/safe_test.rb
250
260
  - test/unit/util_test.rb
251
261
  - test/unit/write_concern_test.rb
262
+ has_rdoc: yard
metadata.gz.sig CHANGED
@@ -1,2 +1,5 @@
1
- �^��1O4E]�9��l�� N� 8(���
2
- 3ZA�o��_���$iflM�qjV�D�Ytzy4ع�.MWy���ٙ��;L��Z��;K�U�VP�B�kI.�4YZ�)9���;� ��)�� ��� @Q�{��k�J8dSP��]M0)���/�R�`\Y;>|��e�0nt*����y��ٝd�����)�O�w\�� ��6��6��<�����t��I��R��j7��HÉ�� G+$9� &Y0�:�@ߞ��
1
+ �Է��LBId�5�ao`1�S�7w��P]ډ�gY����ٖW�vK��ȩա����O_=H���� ���}vT<y'2���҉�~�h���R�L]��0��l�����
2
+ (�L�j���ߞw
3
+ ���?B�h�
4
+ ���%�t:��7ە�8R���RT7 ��ž����s?b�S����>�)0�׉-��
5
+ �H���"i��.���3 �n�ݔ