mongo 1.3.0 → 1.3.1
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.
- data/README.md +8 -7
- data/docs/HISTORY.md +19 -0
- data/lib/mongo.rb +1 -1
- data/lib/mongo/collection.rb +24 -14
- data/lib/mongo/connection.rb +27 -3
- data/lib/mongo/cursor.rb +25 -7
- data/lib/mongo/db.rb +30 -20
- data/lib/mongo/gridfs/grid.rb +2 -1
- data/lib/mongo/gridfs/grid_file_system.rb +1 -0
- data/lib/mongo/gridfs/grid_io.rb +56 -46
- data/lib/mongo/repl_set_connection.rb +1 -0
- data/test/bson/bson_test.rb +5 -0
- data/test/bson/ordered_hash_test.rb +7 -1
- data/test/db_api_test.rb +12 -0
- data/test/db_test.rb +35 -7
- data/test/grid_file_system_test.rb +16 -0
- data/test/grid_io_test.rb +18 -0
- data/test/grid_test.rb +59 -1
- data/test/replica_sets/connect_test.rb +5 -1
- data/test/replica_sets/query_secondaries.rb +15 -3
- data/test/tools/repl_set_manager.rb +3 -3
- metadata +138 -211
data/test/bson/bson_test.rb
CHANGED
@@ -187,6 +187,12 @@ class OrderedHashTest < Test::Unit::TestCase
|
|
187
187
|
assert !new.keys.include?('z')
|
188
188
|
end
|
189
189
|
|
190
|
+
def test_reject_bang
|
191
|
+
@oh.reject! { |k, v| k == 'z' }
|
192
|
+
assert !@oh.keys.include?('z')
|
193
|
+
assert_nil @oh.reject! { |k, v| k == 'z' }
|
194
|
+
end
|
195
|
+
|
190
196
|
def test_clone
|
191
197
|
copy = @oh.clone
|
192
198
|
assert copy.keys == @oh.keys
|
@@ -194,7 +200,7 @@ class OrderedHashTest < Test::Unit::TestCase
|
|
194
200
|
copy[:foo] = 1
|
195
201
|
assert copy.keys != @oh.keys
|
196
202
|
end
|
197
|
-
|
203
|
+
|
198
204
|
def test_dup
|
199
205
|
oh2 = @oh.dup
|
200
206
|
oh2['f'] = 9
|
data/test/db_api_test.rb
CHANGED
@@ -396,6 +396,18 @@ class DBAPITest < Test::Unit::TestCase
|
|
396
396
|
end
|
397
397
|
end
|
398
398
|
|
399
|
+
def test_regex_multi_line
|
400
|
+
if @@version >= "1.9.1"
|
401
|
+
doc = <<HERE
|
402
|
+
the lazy brown
|
403
|
+
fox
|
404
|
+
HERE
|
405
|
+
@@coll.save({:doc => doc})
|
406
|
+
assert @@coll.find_one({:doc => /n.*x/m})
|
407
|
+
@@coll.remove
|
408
|
+
end
|
409
|
+
end
|
410
|
+
|
399
411
|
def test_non_oid_id
|
400
412
|
# Note: can't use Time.new because that will include fractional seconds,
|
401
413
|
# which Mongo does not store.
|
data/test/db_test.rb
CHANGED
@@ -32,14 +32,35 @@ class DBTest < Test::Unit::TestCase
|
|
32
32
|
@@users = @@db.collection('system.users')
|
33
33
|
end
|
34
34
|
end
|
35
|
-
|
35
|
+
|
36
|
+
def test_create_collection
|
37
|
+
col = @@db.create_collection('foo')
|
38
|
+
assert_equal @@db['foo'].name, col.name
|
39
|
+
|
40
|
+
col = @@db.create_collection(:foo)
|
41
|
+
assert_equal @@db['foo'].name, col.name
|
42
|
+
|
43
|
+
@@db.drop_collection('foo')
|
44
|
+
end
|
45
|
+
|
46
|
+
def test_get_and_drop_collection
|
47
|
+
db = @@conn.db(MONGO_TEST_DB, :strict => true)
|
48
|
+
db.create_collection('foo')
|
49
|
+
assert db.collection('foo')
|
50
|
+
assert db.drop_collection('foo')
|
51
|
+
|
52
|
+
db.create_collection(:foo)
|
53
|
+
assert db.collection(:foo)
|
54
|
+
assert db.drop_collection(:foo)
|
55
|
+
end
|
56
|
+
|
36
57
|
def test_logger
|
37
58
|
output = StringIO.new
|
38
59
|
logger = Logger.new(output)
|
39
60
|
logger.level = Logger::DEBUG
|
40
61
|
conn = standard_connection(:logger => logger)
|
41
62
|
assert_equal logger, conn.logger
|
42
|
-
|
63
|
+
|
43
64
|
conn.logger.debug 'testing'
|
44
65
|
assert output.string.include?('testing')
|
45
66
|
end
|
@@ -123,6 +144,13 @@ class DBTest < Test::Unit::TestCase
|
|
123
144
|
@@db.remove_user('spongebob')
|
124
145
|
end
|
125
146
|
|
147
|
+
def test_authenticate_with_special_characters
|
148
|
+
assert @@db.add_user('foo:bar', '@foo')
|
149
|
+
assert @@db.authenticate('foo:bar', '@foo')
|
150
|
+
@@db.logout
|
151
|
+
@@db.remove_user('foo:bar')
|
152
|
+
end
|
153
|
+
|
126
154
|
def test_authenticate_with_connection_uri
|
127
155
|
@@db.add_user('spongebob', 'squarepants')
|
128
156
|
assert Mongo::Connection.from_uri("mongodb://spongebob:squarepants@#{host_port}/#{@@db.name}")
|
@@ -270,17 +298,17 @@ class DBTest < Test::Unit::TestCase
|
|
270
298
|
assert_kind_of Array, info
|
271
299
|
assert info.length >= 1
|
272
300
|
first = info.first
|
273
|
-
assert_kind_of String, first['info']
|
274
301
|
assert_kind_of Time, first['ts']
|
275
302
|
assert_kind_of Numeric, first['millis']
|
276
303
|
end
|
277
304
|
|
278
305
|
should "validate collection" do
|
279
306
|
doc = @db.validate_collection(@coll.name)
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
307
|
+
if @@version >= "1.9.1"
|
308
|
+
assert doc['valid']
|
309
|
+
else
|
310
|
+
assert doc['result']
|
311
|
+
end
|
284
312
|
end
|
285
313
|
|
286
314
|
end
|
@@ -12,6 +12,22 @@ class GridFileSystemTest < Test::Unit::TestCase
|
|
12
12
|
@db.drop_collection('fs.chunks')
|
13
13
|
end
|
14
14
|
|
15
|
+
context "Initialization" do
|
16
|
+
setup do
|
17
|
+
@chunks_data = "CHUNKS" * 50000
|
18
|
+
@grid = GridFileSystem.new(@db)
|
19
|
+
@opts = {:safe => true}
|
20
|
+
@original_opts = @opts.dup
|
21
|
+
@grid.open('sample.file', 'w', @opts) do |f|
|
22
|
+
f.write @chunks_data
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
should "not modify original opts" do
|
27
|
+
assert_equal @original_opts, @opts
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
15
31
|
context "When reading:" do
|
16
32
|
setup do
|
17
33
|
@chunks_data = "CHUNKS" * 50000
|
data/test/grid_io_test.rb
CHANGED
@@ -69,6 +69,24 @@ class GridIOTest < Test::Unit::TestCase
|
|
69
69
|
assert_equal 10, string.length
|
70
70
|
end
|
71
71
|
|
72
|
+
should "read to the end of the file one line at a time" do
|
73
|
+
file = GridIO.new(@files, @chunks, nil, "r", :query => {:_id => @file.files_id})
|
74
|
+
bytes = 0
|
75
|
+
while string = file.gets
|
76
|
+
bytes += string.length
|
77
|
+
end
|
78
|
+
assert_equal 1_000_000, bytes
|
79
|
+
end
|
80
|
+
|
81
|
+
should "read to the end of the file one multi-character separator at a time" do
|
82
|
+
file = GridIO.new(@files, @chunks, nil, "r", :query => {:_id => @file.files_id})
|
83
|
+
bytes = 0
|
84
|
+
while string = file.gets("45")
|
85
|
+
bytes += string.length
|
86
|
+
end
|
87
|
+
assert_equal 1_000_000, bytes
|
88
|
+
end
|
89
|
+
|
72
90
|
should "read to a given separator" do
|
73
91
|
file = GridIO.new(@files, @chunks, nil, "r", :query => {:_id => @file.files_id})
|
74
92
|
string = file.gets("5")
|
data/test/grid_test.rb
CHANGED
@@ -13,6 +13,7 @@ def read_and_write_stream(filename, read_length, opts={})
|
|
13
13
|
read_data = ""
|
14
14
|
while(chunk = file.read(read_length))
|
15
15
|
read_data << chunk
|
16
|
+
break if chunk.empty?
|
16
17
|
end
|
17
18
|
assert_equal data.length, read_data.length
|
18
19
|
end
|
@@ -30,6 +31,21 @@ class GridTest < Test::Unit::TestCase
|
|
30
31
|
@chunks.remove
|
31
32
|
end
|
32
33
|
|
34
|
+
context "A one-chunk grid-stored file" do
|
35
|
+
setup do
|
36
|
+
@data = "GRIDDATA" * 5
|
37
|
+
@grid = Grid.new(@db, 'test-fs')
|
38
|
+
@id = @grid.put(@data, :filename => 'sample',
|
39
|
+
:metadata => {'app' => 'photos'})
|
40
|
+
end
|
41
|
+
|
42
|
+
should "retrieve the file" do
|
43
|
+
data = @grid.get(@id).data
|
44
|
+
assert_equal @data, data
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
48
|
+
|
33
49
|
context "A basic grid-stored file" do
|
34
50
|
setup do
|
35
51
|
@data = "GRIDDATA" * 50000
|
@@ -55,7 +71,7 @@ class GridTest < Test::Unit::TestCase
|
|
55
71
|
|
56
72
|
should "retrieve the stored data" do
|
57
73
|
data = @grid.get(@id).data
|
58
|
-
assert_equal @data, data
|
74
|
+
assert_equal @data.length, data.length
|
59
75
|
end
|
60
76
|
|
61
77
|
should "have a unique index on chunks" do
|
@@ -161,6 +177,44 @@ class GridTest < Test::Unit::TestCase
|
|
161
177
|
end
|
162
178
|
end
|
163
179
|
|
180
|
+
should "be equal in length" do
|
181
|
+
@io.rewind
|
182
|
+
assert_equal @io.read.length, @file.read.length
|
183
|
+
end
|
184
|
+
|
185
|
+
should "read the file" do
|
186
|
+
read_data = ""
|
187
|
+
@file.each do |chunk|
|
188
|
+
read_data << chunk
|
189
|
+
end
|
190
|
+
assert_equal @data.length, read_data.length
|
191
|
+
end
|
192
|
+
|
193
|
+
should "read the file if no block is given" do
|
194
|
+
read_data = @file.each
|
195
|
+
assert_equal @data.length, read_data.length
|
196
|
+
end
|
197
|
+
end
|
198
|
+
|
199
|
+
context "Grid streaming an empty file: " do
|
200
|
+
setup do
|
201
|
+
@grid = Grid.new(@db, 'test-fs')
|
202
|
+
filename = 'empty_data'
|
203
|
+
@io = File.open(File.join(File.dirname(__FILE__), 'data', filename), 'r')
|
204
|
+
id = @grid.put(@io, :filename => filename)
|
205
|
+
@file = @grid.get(id)
|
206
|
+
@io.rewind
|
207
|
+
@data = @io.read
|
208
|
+
if @data.respond_to?(:force_encoding)
|
209
|
+
@data.force_encoding("binary")
|
210
|
+
end
|
211
|
+
end
|
212
|
+
|
213
|
+
should "be equal in length" do
|
214
|
+
@io.rewind
|
215
|
+
assert_equal @io.read.length, @file.read.length
|
216
|
+
end
|
217
|
+
|
164
218
|
should "read the file" do
|
165
219
|
read_data = ""
|
166
220
|
@file.each do |chunk|
|
@@ -184,6 +238,10 @@ class GridTest < Test::Unit::TestCase
|
|
184
238
|
read_and_write_stream('small_data.txt', 1, :chunk_size => 2)
|
185
239
|
end
|
186
240
|
|
241
|
+
should "put and get an empty io object" do
|
242
|
+
read_and_write_stream('empty_data', 1)
|
243
|
+
end
|
244
|
+
|
187
245
|
should "put and get a small io object" do
|
188
246
|
read_and_write_stream('small_data.txt', 1)
|
189
247
|
end
|
@@ -28,7 +28,7 @@ class ConnectTest < Test::Unit::TestCase
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def test_connect
|
31
|
-
@conn = ReplSetConnection.new([RS.host, RS.ports[
|
31
|
+
@conn = ReplSetConnection.new([RS.host, RS.ports[1]], [RS.host, RS.ports[0]],
|
32
32
|
[RS.host, RS.ports[2]], :name => RS.name)
|
33
33
|
assert @conn.connected?
|
34
34
|
assert @conn.read_primary?
|
@@ -37,6 +37,10 @@ class ConnectTest < Test::Unit::TestCase
|
|
37
37
|
assert_equal RS.primary, @conn.primary
|
38
38
|
assert_equal RS.secondaries.sort, @conn.secondaries.sort
|
39
39
|
assert_equal RS.arbiters.sort, @conn.arbiters.sort
|
40
|
+
|
41
|
+
@conn = ReplSetConnection.new([RS.host, RS.ports[1]], [RS.host, RS.ports[0]],
|
42
|
+
:name => RS.name)
|
43
|
+
assert @conn.connected?
|
40
44
|
end
|
41
45
|
|
42
46
|
def test_host_port_accessors
|
@@ -31,7 +31,7 @@ class ReplicaSetQuerySecondariesTest < Test::Unit::TestCase
|
|
31
31
|
end
|
32
32
|
|
33
33
|
def test_query_secondaries
|
34
|
-
@coll = @db.collection("test-sets", :safe => {:w => 3, :wtimeout =>
|
34
|
+
@coll = @db.collection("test-sets", :safe => {:w => 3, :wtimeout => 20000})
|
35
35
|
@coll.save({:a => 20})
|
36
36
|
@coll.save({:a => 30})
|
37
37
|
@coll.save({:a => 40})
|
@@ -70,7 +70,7 @@ class ReplicaSetQuerySecondariesTest < Test::Unit::TestCase
|
|
70
70
|
end
|
71
71
|
|
72
72
|
def test_kill_secondary
|
73
|
-
@coll = @db.collection("test-sets", {:safe => {:w => 3, :wtimeout =>
|
73
|
+
@coll = @db.collection("test-sets", {:safe => {:w => 3, :wtimeout => 20000}})
|
74
74
|
@coll.save({:a => 20})
|
75
75
|
@coll.save({:a => 30})
|
76
76
|
assert_equal 2, @coll.find.to_a.length
|
@@ -90,7 +90,19 @@ class ReplicaSetQuerySecondariesTest < Test::Unit::TestCase
|
|
90
90
|
assert_equal 2, length
|
91
91
|
end
|
92
92
|
new_read_pool_port = @conn.read_pool.port
|
93
|
-
assert
|
93
|
+
assert old_read_pool_port != new_read_pool_port
|
94
|
+
end
|
95
|
+
|
96
|
+
def test_write_lots_of_data
|
97
|
+
@coll = @db.collection("test-sets", {:safe => {:w => 2}})
|
98
|
+
|
99
|
+
6000.times do |n|
|
100
|
+
@coll.save({:a => n})
|
101
|
+
end
|
102
|
+
|
103
|
+
cursor = @coll.find()
|
104
|
+
cursor.next
|
105
|
+
cursor.close
|
94
106
|
end
|
95
107
|
|
96
108
|
end
|
@@ -23,8 +23,8 @@ class ReplSetManager
|
|
23
23
|
@path = File.join(File.expand_path(File.dirname(__FILE__)), "data")
|
24
24
|
|
25
25
|
@arbiter_count = opts[:arbiter_count] || 2
|
26
|
-
@secondary_count = opts[:secondary_count] ||
|
27
|
-
@passive_count = opts[:passive_count] ||
|
26
|
+
@secondary_count = opts[:secondary_count] || 2
|
27
|
+
@passive_count = opts[:passive_count] || 0
|
28
28
|
@primary_count = 1
|
29
29
|
|
30
30
|
@count = @primary_count + @passive_count + @arbiter_count + @secondary_count
|
@@ -41,7 +41,7 @@ class ReplSetManager
|
|
41
41
|
system("killall mongod")
|
42
42
|
|
43
43
|
n = 0
|
44
|
-
(@primary_count + @secondary_count).times do
|
44
|
+
(@primary_count + @secondary_count).times do
|
45
45
|
init_node(n)
|
46
46
|
n += 1
|
47
47
|
end
|
metadata
CHANGED
@@ -1,248 +1,175 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mongo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
4
|
+
prerelease: false
|
6
5
|
segments:
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
version: 1.3.
|
6
|
+
- 1
|
7
|
+
- 3
|
8
|
+
- 1
|
9
|
+
version: 1.3.1
|
11
10
|
platform: ruby
|
12
11
|
authors:
|
13
|
-
- Jim Menard
|
14
|
-
- Mike Dirolf
|
15
|
-
- Kyle Banker
|
12
|
+
- Jim Menard
|
13
|
+
- Mike Dirolf
|
14
|
+
- Kyle Banker
|
16
15
|
autorequire:
|
17
16
|
bindir: bin
|
18
17
|
cert_chain: []
|
19
18
|
|
20
|
-
date: 2011-
|
19
|
+
date: 2011-05-11 00:00:00 -04:00
|
21
20
|
default_executable:
|
22
21
|
dependencies:
|
23
|
-
- !ruby/object:Gem::Dependency
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
type: :runtime
|
38
|
-
version_requirements: *id001
|
22
|
+
- !ruby/object:Gem::Dependency
|
23
|
+
name: bson
|
24
|
+
prerelease: false
|
25
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
segments:
|
30
|
+
- 1
|
31
|
+
- 3
|
32
|
+
- 1
|
33
|
+
version: 1.3.1
|
34
|
+
type: :runtime
|
35
|
+
version_requirements: *id001
|
39
36
|
description: A Ruby driver for MongoDB. For more information about Mongo, see http://www.mongodb.org.
|
40
37
|
email: mongodb-dev@googlegroups.com
|
41
38
|
executables:
|
42
|
-
- mongo_console
|
39
|
+
- mongo_console
|
43
40
|
extensions: []
|
44
41
|
|
45
42
|
extra_rdoc_files:
|
46
|
-
- README.md
|
43
|
+
- README.md
|
47
44
|
files:
|
48
|
-
- README.md
|
49
|
-
- Rakefile
|
50
|
-
- mongo.gemspec
|
51
|
-
- LICENSE.txt
|
52
|
-
- lib/mongo.rb
|
53
|
-
- lib/mongo/cursor.rb
|
54
|
-
- lib/mongo/collection.rb
|
55
|
-
- lib/mongo/exceptions.rb
|
56
|
-
- lib/mongo/connection.rb
|
57
|
-
- lib/mongo/repl_set_connection.rb
|
58
|
-
- lib/mongo/test.rb
|
59
|
-
- lib/mongo/
|
60
|
-
- lib/mongo/gridfs/
|
61
|
-
- lib/mongo/gridfs/
|
62
|
-
- lib/mongo/gridfs/
|
63
|
-
- lib/mongo/gridfs/
|
64
|
-
- lib/mongo/
|
65
|
-
- lib/mongo/util/
|
66
|
-
- lib/mongo/util/
|
67
|
-
- lib/mongo/util/
|
68
|
-
- lib/mongo/util/
|
69
|
-
- lib/mongo/util/
|
70
|
-
- lib/mongo/
|
71
|
-
- docs/HISTORY.md
|
72
|
-
- docs/TUTORIAL.md
|
73
|
-
- docs/CREDITS.md
|
74
|
-
- docs/FAQ.md
|
75
|
-
- docs/REPLICA_SETS.md
|
76
|
-
- docs/RELEASES.md
|
77
|
-
- docs/GridFS.md
|
78
|
-
- docs/WRITE_CONCERN.md
|
79
|
-
- bin/mongo_console
|
80
|
-
- test/grid_file_system_test.rb
|
81
|
-
- test/unit/db_test.rb
|
82
|
-
- test/unit/repl_set_connection_test.rb
|
83
|
-
- test/unit/collection_test.rb
|
84
|
-
- test/unit/cursor_test.rb
|
85
|
-
- test/unit/grid_test.rb
|
86
|
-
- test/unit/connection_test.rb
|
87
|
-
- test/unit/pool_test.rb
|
88
|
-
- test/unit/safe_test.rb
|
89
|
-
- test/db_test.rb
|
90
|
-
- test/collection_test.rb
|
91
|
-
- test/async/collection_test.rb
|
92
|
-
- test/async/cursor_test.rb
|
93
|
-
- test/async/connection_test.rb
|
94
|
-
- test/async/worker_pool_test.rb
|
95
|
-
- test/cursor_test.rb
|
96
|
-
- test/load/unicorn/unicorn.rb
|
97
|
-
- test/load/unicorn/load.rb
|
98
|
-
- test/load/resque/processor.rb
|
99
|
-
- test/load/resque/load.rb
|
100
|
-
- test/load/thin/load.rb
|
101
|
-
- test/grid_test.rb
|
102
|
-
- test/db_api_test.rb
|
103
|
-
- test/auxillary/slave_connection_test.rb
|
104
|
-
- test/auxillary/threaded_authentication_test.rb
|
105
|
-
- test/auxillary/authentication_test.rb
|
106
|
-
- test/auxillary/fork_test.rb
|
107
|
-
- test/auxillary/autoreconnect_test.rb
|
108
|
-
- test/auxillary/repl_set_auth_test.rb
|
109
|
-
- test/auxillary/1.4_features.rb
|
110
|
-
- test/conversions_test.rb
|
111
|
-
- test/connection_test.rb
|
112
|
-
- test/uri_test.rb
|
113
|
-
- test/cursor_message_test.rb
|
114
|
-
- test/tools/test.rb
|
115
|
-
- test/tools/repl_set_manager.rb
|
116
|
-
- test/tools/auth_repl_set_manager.rb
|
117
|
-
- test/tools/load.rb
|
118
|
-
- test/tools/sharding_manager.rb
|
119
|
-
- test/cursor_fail_test.rb
|
120
|
-
- test/threading/threading_with_large_pool_test.rb
|
121
|
-
- test/test_helper.rb
|
122
|
-
- test/grid_io_test.rb
|
123
|
-
- test/bson/byte_buffer_test.rb
|
124
|
-
- test/bson/binary_test.rb
|
125
|
-
- test/bson/object_id_test.rb
|
126
|
-
- test/bson/json_test.rb
|
127
|
-
- test/bson/timestamp_test.rb
|
128
|
-
- test/bson/bson_test.rb
|
129
|
-
- test/bson/ordered_hash_test.rb
|
130
|
-
- test/bson/hash_with_indifferent_access_test.rb
|
131
|
-
- test/support/keys.rb
|
132
|
-
- test/support/hash_with_indifferent_access.rb
|
133
|
-
- test/db_connection_test.rb
|
134
|
-
- test/replica_sets/rs_test_helper.rb
|
135
|
-
- test/replica_sets/pooled_insert_test.rb
|
136
|
-
- test/replica_sets/count_test.rb
|
137
|
-
- test/replica_sets/replication_ack_test.rb
|
138
|
-
- test/replica_sets/query_secondaries.rb
|
139
|
-
- test/replica_sets/query_test.rb
|
140
|
-
- test/replica_sets/connection_string_test.rb
|
141
|
-
- test/replica_sets/insert_test.rb
|
142
|
-
- test/replica_sets/connect_test.rb
|
143
|
-
- test/safe_test.rb
|
144
|
-
- test/support_test.rb
|
145
|
-
- test/threading_test.rb
|
45
|
+
- README.md
|
46
|
+
- Rakefile
|
47
|
+
- mongo.gemspec
|
48
|
+
- LICENSE.txt
|
49
|
+
- lib/mongo.rb
|
50
|
+
- lib/mongo/cursor.rb
|
51
|
+
- lib/mongo/collection.rb
|
52
|
+
- lib/mongo/exceptions.rb
|
53
|
+
- lib/mongo/connection.rb
|
54
|
+
- lib/mongo/repl_set_connection.rb
|
55
|
+
- lib/mongo/test.rb
|
56
|
+
- lib/mongo/db.rb
|
57
|
+
- lib/mongo/gridfs/grid_io.rb
|
58
|
+
- lib/mongo/gridfs/grid_file_system.rb
|
59
|
+
- lib/mongo/gridfs/grid.rb
|
60
|
+
- lib/mongo/gridfs/grid_ext.rb
|
61
|
+
- lib/mongo/gridfs/grid_io_fix.rb
|
62
|
+
- lib/mongo/util/conversions.rb
|
63
|
+
- lib/mongo/util/support.rb
|
64
|
+
- lib/mongo/util/pool.rb
|
65
|
+
- lib/mongo/util/core_ext.rb
|
66
|
+
- lib/mongo/util/server_version.rb
|
67
|
+
- lib/mongo/util/uri_parser.rb
|
68
|
+
- docs/HISTORY.md
|
69
|
+
- docs/TUTORIAL.md
|
70
|
+
- docs/CREDITS.md
|
71
|
+
- docs/FAQ.md
|
72
|
+
- docs/REPLICA_SETS.md
|
73
|
+
- docs/RELEASES.md
|
74
|
+
- docs/GridFS.md
|
75
|
+
- docs/WRITE_CONCERN.md
|
76
|
+
- bin/mongo_console
|
146
77
|
has_rdoc: true
|
147
78
|
homepage: http://www.mongodb.org
|
148
79
|
licenses: []
|
149
80
|
|
150
81
|
post_install_message:
|
151
82
|
rdoc_options:
|
152
|
-
- --main
|
153
|
-
- README.md
|
154
|
-
- --inline-source
|
83
|
+
- --main
|
84
|
+
- README.md
|
85
|
+
- --inline-source
|
155
86
|
require_paths:
|
156
|
-
- lib
|
87
|
+
- lib
|
157
88
|
required_ruby_version: !ruby/object:Gem::Requirement
|
158
|
-
none: false
|
159
89
|
requirements:
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
version: "0"
|
90
|
+
- - ">="
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
segments:
|
93
|
+
- 0
|
94
|
+
version: "0"
|
166
95
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
167
|
-
none: false
|
168
96
|
requirements:
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
version: "0"
|
97
|
+
- - ">="
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
segments:
|
100
|
+
- 0
|
101
|
+
version: "0"
|
175
102
|
requirements: []
|
176
103
|
|
177
104
|
rubyforge_project:
|
178
|
-
rubygems_version: 1.
|
105
|
+
rubygems_version: 1.3.6
|
179
106
|
signing_key:
|
180
107
|
specification_version: 3
|
181
108
|
summary: Ruby driver for the MongoDB
|
182
109
|
test_files:
|
183
|
-
- test/grid_file_system_test.rb
|
184
|
-
- test/
|
185
|
-
- test/
|
186
|
-
- test/
|
187
|
-
- test/
|
188
|
-
- test/
|
189
|
-
- test/
|
190
|
-
- test/
|
191
|
-
- test/
|
192
|
-
- test/
|
193
|
-
- test/
|
194
|
-
- test/
|
195
|
-
- test/
|
196
|
-
- test/
|
197
|
-
- test/
|
198
|
-
- test/
|
199
|
-
- test/
|
200
|
-
- test/
|
201
|
-
- test/
|
202
|
-
- test/
|
203
|
-
- test/
|
204
|
-
- test/grid_test.rb
|
205
|
-
- test/
|
206
|
-
- test/
|
207
|
-
- test/
|
208
|
-
- test/
|
209
|
-
- test/
|
210
|
-
- test/
|
211
|
-
- test/
|
212
|
-
- test/
|
213
|
-
- test/
|
214
|
-
- test/
|
215
|
-
- test/
|
216
|
-
- test/
|
217
|
-
- test/
|
218
|
-
- test/
|
219
|
-
- test/
|
220
|
-
- test/
|
221
|
-
- test/
|
222
|
-
- test/
|
223
|
-
- test/
|
224
|
-
- test/
|
225
|
-
- test/
|
226
|
-
- test/
|
227
|
-
- test/
|
228
|
-
- test/
|
229
|
-
- test/
|
230
|
-
- test/bson/
|
231
|
-
- test/bson/
|
232
|
-
- test/bson/
|
233
|
-
- test/bson/
|
234
|
-
- test/
|
235
|
-
- test/
|
236
|
-
- test/
|
237
|
-
- test/
|
238
|
-
- test/
|
239
|
-
- test/
|
240
|
-
- test/replica_sets/
|
241
|
-
- test/replica_sets/
|
242
|
-
- test/replica_sets/
|
243
|
-
- test/replica_sets/
|
244
|
-
- test/replica_sets/
|
245
|
-
- test/replica_sets/
|
246
|
-
- test/
|
247
|
-
- test/
|
248
|
-
- test/
|
110
|
+
- test/grid_file_system_test.rb
|
111
|
+
- test/db_test.rb
|
112
|
+
- test/collection_test.rb
|
113
|
+
- test/cursor_test.rb
|
114
|
+
- test/grid_test.rb
|
115
|
+
- test/db_api_test.rb
|
116
|
+
- test/conversions_test.rb
|
117
|
+
- test/connection_test.rb
|
118
|
+
- test/uri_test.rb
|
119
|
+
- test/cursor_message_test.rb
|
120
|
+
- test/cursor_fail_test.rb
|
121
|
+
- test/test_helper.rb
|
122
|
+
- test/grid_io_test.rb
|
123
|
+
- test/db_connection_test.rb
|
124
|
+
- test/safe_test.rb
|
125
|
+
- test/support_test.rb
|
126
|
+
- test/threading_test.rb
|
127
|
+
- test/unit/db_test.rb
|
128
|
+
- test/unit/repl_set_connection_test.rb
|
129
|
+
- test/unit/collection_test.rb
|
130
|
+
- test/unit/cursor_test.rb
|
131
|
+
- test/unit/grid_test.rb
|
132
|
+
- test/unit/connection_test.rb
|
133
|
+
- test/unit/pool_test.rb
|
134
|
+
- test/unit/safe_test.rb
|
135
|
+
- test/async/collection_test.rb
|
136
|
+
- test/async/cursor_test.rb
|
137
|
+
- test/async/connection_test.rb
|
138
|
+
- test/async/worker_pool_test.rb
|
139
|
+
- test/load/unicorn/unicorn.rb
|
140
|
+
- test/load/unicorn/load.rb
|
141
|
+
- test/load/resque/processor.rb
|
142
|
+
- test/load/resque/load.rb
|
143
|
+
- test/load/thin/load.rb
|
144
|
+
- test/auxillary/slave_connection_test.rb
|
145
|
+
- test/auxillary/threaded_authentication_test.rb
|
146
|
+
- test/auxillary/authentication_test.rb
|
147
|
+
- test/auxillary/fork_test.rb
|
148
|
+
- test/auxillary/autoreconnect_test.rb
|
149
|
+
- test/auxillary/repl_set_auth_test.rb
|
150
|
+
- test/auxillary/1.4_features.rb
|
151
|
+
- test/tools/test.rb
|
152
|
+
- test/tools/repl_set_manager.rb
|
153
|
+
- test/tools/auth_repl_set_manager.rb
|
154
|
+
- test/tools/load.rb
|
155
|
+
- test/tools/sharding_manager.rb
|
156
|
+
- test/threading/threading_with_large_pool_test.rb
|
157
|
+
- test/bson/byte_buffer_test.rb
|
158
|
+
- test/bson/binary_test.rb
|
159
|
+
- test/bson/object_id_test.rb
|
160
|
+
- test/bson/json_test.rb
|
161
|
+
- test/bson/timestamp_test.rb
|
162
|
+
- test/bson/bson_test.rb
|
163
|
+
- test/bson/ordered_hash_test.rb
|
164
|
+
- test/bson/hash_with_indifferent_access_test.rb
|
165
|
+
- test/support/keys.rb
|
166
|
+
- test/support/hash_with_indifferent_access.rb
|
167
|
+
- test/replica_sets/rs_test_helper.rb
|
168
|
+
- test/replica_sets/pooled_insert_test.rb
|
169
|
+
- test/replica_sets/count_test.rb
|
170
|
+
- test/replica_sets/replication_ack_test.rb
|
171
|
+
- test/replica_sets/query_secondaries.rb
|
172
|
+
- test/replica_sets/query_test.rb
|
173
|
+
- test/replica_sets/connection_string_test.rb
|
174
|
+
- test/replica_sets/insert_test.rb
|
175
|
+
- test/replica_sets/connect_test.rb
|