Commit Graph

548 Commits

Author SHA1 Message Date
Kyle Banker
7a11bb18a9 Ensure that cursor requiring getmore ops will not
be affected by replica set refresh.

Prep for sending commands to secondaries.
2011-10-17 14:41:09 -04:00
Kyle Banker
6a7e991689 Fix connection leak and refresh. 2011-10-14 09:52:11 -04:00
Kyle Banker
1001e59e44 minor: test framework fixes; minor bug fixes 2011-10-13 17:58:20 -04:00
Kyle Banker
c2070bb90a minor: simply and refactor auto refresh 2011-10-12 17:13:48 -04:00
Kyle Banker
566d1a844f minor: test to reproduce CURSOR_NOT_FOUND error with async refresh 2011-10-12 10:51:57 -04:00
slloyd
92a2e86d9a Allow logging from Collection using Connection logger 2011-10-11 10:25:24 -07:00
Kyle Banker
f5f714a1a1 Added some basic, sanity-checking tests. 2011-10-07 13:55:09 -04:00
Kyle Banker
018da9049c minor: test fix 2011-09-26 17:48:17 -04:00
David E. Chen
9eaf6b7b83 Support the current MongoDB URI scheme with multiple hosts/ports separated by commas all using the same authentication and database. 2011-09-26 17:39:47 -04:00
Kyle Banker
69598857ef minor: tests 2011-09-26 16:27:10 -04:00
Karl Seguin
77e9c05e40 sending a shutdown command to kill a node seems a lot more reliable than issuing a kill command (on my system anyways) 2011-09-26 16:09:01 -04:00
Kyle Banker
fe5f37b5d3 minor: remove bad test 2011-09-19 12:05:03 -04:00
Kyle Banker
3e3f05813a minor: cleanup and test fix 2011-09-15 17:46:59 -04:00
Kyle Banker
83eaa4d51b Replica Set connection improvements for refresh and multi-threaded apps. 2011-09-13 17:50:01 -04:00
Kyle Banker
e678bac75e RUBY-306 clean up logging. 2011-09-07 17:14:53 -04:00
Kyle Banker
75941ad2a3 minor: Cursor cleanup 2011-09-07 10:17:24 -04:00
Kyle Banker
1c439df278 RUBY-312 Enable exhaust-mode queries. 2011-09-07 10:02:10 -04:00
Kyle Banker
50c38c6c6b RUBY-284 document :read API 2011-09-06 14:58:03 -04:00
Kyle Banker
046038e18d RUBY-297 when possible, include error codes and
return objects in exception classes.
2011-09-06 14:22:50 -04:00
Kyle Banker
834b0db0af RUBY-307 Collection#count should take a query, skip, and limit. 2011-09-06 11:38:19 -04:00
Kyle Banker
b0b1c043ca Pool manager unit test. 2011-09-02 17:26:43 -04:00
Kyle Banker
fbeea87c47 Added some read preference tests; refactoring; nice Pool#inspect. 2011-08-31 17:34:06 -04:00
Kyle Banker
adb4675f20 RUBY-321 Use sync RW lock for ReplSetConnection. Bug fixes. 2011-08-31 16:05:21 -04:00
Kyle Banker
7769f4d44d minor: test fix 2011-08-31 11:46:33 -04:00
Kyle Banker
8b2de82464 RUBY-320 ReplSetConnection now caches tags and maps them to pools for reading. 2011-08-30 15:59:04 -04:00
Kyle Banker
45c40e7267 RUBY-320 RUBY-284 initial cascading read API. Mapping sockets to pools. 2011-08-29 17:49:58 -04:00
Kyle Banker
a6ea525e3d RUBY-319 support continue_on_error insert flag 2011-08-29 12:04:01 -04:00
Kyle Banker
f00c0dfcf0 RUBY-316 initial SSL support 2011-08-26 17:35:40 -04:00
Kyle Banker
8db62d2cbf RUBY-311 ensure that ReplSetConnection connects to replica set members only. 2011-08-26 12:40:13 -04:00
Kyle Banker
85a53571bc minor: test cleanup 2011-08-26 10:59:49 -04:00
Kyle Banker
5559f91da2 RUBY-314 test for update when a node is removed 2011-08-25 18:52:20 -04:00
Kyle Banker
3c127984a3 RUBY-242 check BSON size on a per-connection basis. 2011-08-25 14:57:24 -04:00
Kyle Banker
9b42265d10 Fixed unit test 2011-08-25 12:56:06 -04:00
Kyle Banker
f3fbb98fa8 RUBY-314 replica set connection and test cleanup 2011-08-25 11:27:58 -04:00
Kyle Banker
a3b28f7bde Merge pull request #54 from renctan/master
RUBY-296 fix for BSON timestamp serialization issue for C extension
2011-08-24 15:24:06 -07:00
Kyle Banker
1090dd3873 RUBY-314 initial implementation of replica set health checking via background thread 2011-08-24 18:34:00 -04:00
renctan
19c9cb778b Fixed thet timestamp serialization issues for 32bit machines. 2011-08-24 13:14:36 -04:00
Kyle Banker
9ea718522f RUBY-291 automate local replica set reads by ping time 2011-08-22 11:52:11 -04:00
Kyle Banker
3027e29f46 Simpify replica set connection code. 2011-08-16 16:47:07 -04:00
Karl Seguin
2557a575eb added node class 2011-08-12 16:40:09 -04:00
Kyle Banker
50ca353b05 RUBY-277 removed unnecessary include 2011-08-10 13:49:28 -04:00
Kyle Banker
0ce614a55e RUBY-277 remove dependencies on mongo gem from BSON tests. 2011-08-09 18:00:03 -04:00
Kyle Banker
61151a4f35 RUBY-278 minor: typo 2011-08-08 17:54:25 -04:00
Kyle Banker
a9b975eaaa RUBY-304 add Collection#capped? 2011-08-08 17:52:44 -04:00
Kyle Banker
a323911507 minor: fixed some failing tests 2011-08-08 16:05:56 -04:00
Kyle Banker
b32f895ed6 RUBY-288 ensure we cannot modify with add_option or remove_option after iteration starts. 2011-08-05 18:22:09 -04:00
Kyle Banker
1142c33910 RUBY-288 Cursor#remove_option 2011-08-05 18:15:48 -04:00
Kyle Banker
96b39313bf RUBY-267 Cursor#alive? 2011-08-05 17:54:38 -04:00
Kyle Banker
eecb1d35de Revert "RUBY-167 Cursor#alive?"
This reverts commit 91308cdc60.
Wrong JIRA Issue
2011-08-05 17:52:44 -04:00
Kyle Banker
91308cdc60 RUBY-167 Cursor#alive? 2011-08-05 17:51:37 -04:00
Kyle Banker
eca6653bc2 RUBY-281 make BSON::OrderedHash#inspect more precise. 2011-08-05 17:43:39 -04:00
Kyle Banker
28f0f7af3e RUBY-292 OrderedHash should hash with same value as Hash. 2011-08-05 17:27:44 -04:00
Kyle Banker
237dc98fbf RUBY-283 add_option for cursors. Deprecate Cursor#query_opts. 2011-08-05 11:52:45 -04:00
Kyle Banker
5950f6850f minor: timestamp test 2011-07-15 11:09:16 -04:00
Kyle Banker
e1463cdce2 Merge pull request #47 from karlseguin/master
Fix minor bug bug in batch_size when limit isn't set.
2011-07-11 06:45:44 -07:00
Kyle Banker
880f40bcaa Merge pull request #51 from bernerdschaefer/master
BSON test fixes
2011-07-11 06:44:18 -07:00
Bernerd Schaefer
7f906b44b4 Silence deprecation warnings from BSON tests 2011-07-08 13:54:01 +02:00
Bernerd Schaefer
d0ba797fd9 Use #object_id instead of #id in test 2011-07-08 13:38:43 +02:00
Bernerd Schaefer
ee198c7643 ObjectId#generate uses java.bson.types.ObjectId
Delegating ObjectId#generate when running under jruby to the java BSON
library halves the time needed to generate a new object id.
2011-06-29 14:49:53 +02:00
Kyle Banker
0821e16f92 minor: test 2011-06-22 12:06:20 -04:00
Kyle Banker
4f4e6ee833 RUBY-286 test replica set reconnect when adding a new node 2011-06-17 12:15:07 -04:00
Karl Seguin
7783cebfdf batch_size is taken into account when limit is 0/not set 2011-06-16 22:21:40 +08:00
Kyle Banker
fbf7b754ac RUBY-287 OrderedHash#replace 2011-06-15 16:25:20 -04:00
Kyle Banker
b0d5df72fa RUBY-269 RUBY-275 added connect_timeout option 2011-06-15 14:20:11 -04:00
Karl Seguin
50a54cdcc0 can drop an index using the same type of spec used to create an index 2011-05-31 19:52:50 +08:00
Peter Olsen
809dcf7e17 add test for ensure_index with drop_dups 2011-05-19 19:35:06 +00:00
Daniël van de Burgt
3cb1e4644b added failing test: reading chunks from an empty (zero-length) grid-stored file 2011-05-10 22:57:22 -05:00
Kyle Banker
b8ab13e7f9 Revert "RUBY-267 Cursor#alive?"
This reverts commit 05dfef2f11.
This adds new functionality and thus must wait for the 1.4 release.
2011-05-10 15:58:23 -04:00
Kyle Banker
05dfef2f11 RUBY-267 Cursor#alive? 2011-05-10 15:45:32 -04:00
Kyle Banker
f7e1feaeba minor: make DB#validate_collection compatible with server v1.8 and v1.9.1 2011-05-10 14:28:04 -04:00
Kyle Banker
604d0f60ed RUBY-261 Cursor#close hits secondary when appropriate. 2011-05-10 14:21:23 -04:00
Kyle Banker
cb54c6b295 minor: fix for format change is result for 1.9.1 'validate' command. 2011-05-09 14:43:39 -04:00
Kyle Banker
135bebd9ab RUBY-270 support 's' regex option.
Note: Ruby includes dotall 's' semantics on 'm' option.
2011-05-09 14:17:56 -04:00
Kyle Banker
0051b9446a RUBY-260 methods using DB#collection_names should account for symbols. 2011-05-09 12:28:07 -04:00
Ryan McGeary
c672168236 Fixed GridIO#gets to handle the end of a file
Neither a multi-character nor single-character separator search returned nil
after hitting the EOF.
2011-05-03 11:36:33 -04:00
Kyle Banker
ba1e4679fa Leave hash arguments unmodified. 2011-04-27 11:10:48 -04:00
Kyle Banker
9cc6bad613 Simplify GridIO#read_all 2011-04-26 07:48:16 -04:00
Kyle Banker
140dfa9f32 minor: fixes 2011-04-26 07:48:16 -04:00
Kyle Banker
af6552ed3c RUBY-265 semantics should == Hash#reject! 2011-04-15 16:19:00 -04:00
Kyle Banker
d0a4483713 RUBY-265 fix OrderedHash#reject! 2011-04-15 16:10:38 -04:00
Kyle Banker
9c30de332f minor: test fix 2011-04-15 10:58:37 -04:00
Kyle Banker
043590f9a3 minor: test replica set connect with reverse node order 2011-04-13 14:39:52 -04:00
Kyle Banker
3187761670 RUBY-258 Bytebuffer#unpack takes arbitrary format string 2011-04-01 13:36:28 -04:00
Kyle Banker
1d3ffe37c7 minor: test fix for server versions < 1.8 2011-03-29 17:02:48 -04:00
Kyle Banker
002ddb06fc RUBY-240 Add StringIO methods to GridIO 2011-03-29 15:27:13 -04:00
Kyle Banker
db1213fc5d RUBY-139 Use BSON binary subtype 0 by default 2011-03-29 12:25:48 -04:00
Kyle Banker
a6cc09e50c RUBY-236 more timeout tweaks and tests 2011-03-29 11:46:29 -04:00
Kyle Banker
017d252689 minor: test fix 2011-03-29 11:09:14 -04:00
Kyle Banker
025e56732e minor: test and doc fixes 2011-03-29 10:39:01 -04:00
Kyle Banker
05bf234bb8 RUBY-255 Support BSON Timestamp 2011-03-28 14:36:49 -04:00
Mauro Pompilio
baa1d0b802 Method *create_colletion* behaves the same way as *collection*
when options are passed.
2011-03-28 11:23:03 -04:00
Hongli Lai (Phusion)
6b4ca2461f Implement BSON::ByteBuffer#== 2011-03-28 11:16:54 -04:00
Hongli Lai (Phusion)
08daf9c5f9 Implement BSON::OrderedHash#dup 2011-03-28 11:16:46 -04:00
Kyle Banker
b48a2bd84f RUBY-253 fix UTF8 check for Ruby 1.9 2011-03-24 12:11:12 -04:00
Kyle Banker
272d4835a7 RUBY-252 RUBY-237 re-add Connection#host and Connection#port 2011-03-23 16:34:42 -04:00
Kyle Banker
2bfe205c51 Merged wpiekutowski's commits to enable warnings
on test suite and clean up some code.

Conflicts:
	test/cursor_test.rb
2011-03-23 16:02:04 -04:00
Kyle Banker
bd4731dd39 minor: test fix 2011-03-23 15:32:32 -04:00
John Nunemaker
53ad43fedc Added transformer concept.
Can be passed to find/find_one, which in turn is passed to cursor. It is an optional block that makes it easier to turn documents that are returned into hashes.

cursor = collection.find({...}, :transformer => Proc.new { |doc| User.load(doc) })
cursor.next # returns instance of User instead of ordered hash

This will allow MongoMapper, ToyStore and other object mappers to take better advantage of Cursors. No more calling to_a and mapping to instances.
2011-03-23 15:26:34 -04:00
Kyle Banker
5cdae46b56 RUBY-250 RUBY-231 Test fork safety 2011-03-17 22:38:21 -04:00
Kyle Banker
997d9b8ae2 RUBY-231 RUBY-250 Validate socket against pid 2011-03-17 22:15:14 -04:00