Commit Graph

253 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 f5f714a1a1 Added some basic, sanity-checking tests. 2011-10-07 13:55:09 -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
Michael Glass fd0e858021 MongoDB URI should allow db with no username or password. 2011-09-26 16:21:43 -04:00
Kyle Banker 63c91af1b1 minor fixes and doc updates. :sync is default refresh mode. 2011-09-15 18:44:02 -04:00
Kyle Banker 3e3f05813a minor: cleanup and test fix 2011-09-15 17:46:59 -04:00
Kyle Banker b910e3e635 Add synchronous refresh; fix connection leak. 2011-09-15 15:44:12 -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 701bba8942 RUBY-306 added missing file 2011-09-11 12:08:26 -04:00
Kyle Banker 50c38c6c6b RUBY-284 document :read API 2011-09-06 14:58:03 -04:00
Kyle Banker b0b1c043ca Pool manager unit test. 2011-09-02 17:26:43 -04:00
Kyle Banker e2178b0f1d RUBY-322 nicer inspect methods 2011-09-01 11:42:56 -04:00
Kyle Banker a916d3c8a2 minor: organization 2011-09-01 11:32:32 -04:00
Kyle Banker fbeea87c47 Added some read preference tests; refactoring; nice Pool#inspect. 2011-08-31 17:34:06 -04:00
Kyle Banker 2ff4169a50 Remove unnecessary code. 2011-08-31 16:06:14 -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 e8a5375cbf minor: replica set test fixes 2011-08-30 16:16:47 -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 f00c0dfcf0 RUBY-316 initial SSL support 2011-08-26 17:35:40 -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 0e227d5a39 minor: remove unused method 2011-08-25 11:34:24 -04:00
Kyle Banker f3fbb98fa8 RUBY-314 replica set connection and test cleanup 2011-08-25 11:27:58 -04:00
Kyle Banker 1090dd3873 RUBY-314 initial implementation of replica set health checking via background thread 2011-08-24 18:34:00 -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 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 997d9b8ae2 RUBY-231 RUBY-250 Validate socket against pid 2011-03-17 22:15:14 -04:00
Mauro Pompilio fa0a933780 Fix the exception message shown when there's an IOError
while closing a socket in the pool.
2011-02-23 12:43:20 -05:00
Wojciech Piekutowski 2971793b48 Remove dead code 2011-02-20 17:12:46 +01:00
Wojciech Piekutowski e4867b542e Initialize instance variables for available options 2011-02-20 16:12:30 +01:00
Wojciech Piekutowski b541972bdc Remove duplicating character classes from URI regexp in Mongo::URIParser 2011-02-20 15:36:15 +01:00
Kyle Banker ed44a7490c Improved replica set failover tests. A few
improved exception messages.
2011-02-15 16:48:29 -05:00
Kyle Banker e55cf2b7d1 minor: doc fix 2011-02-10 17:09:03 -05:00
Kyle Banker e8e617e95f Test for replica set authentication; bug fix. 2011-02-02 11:26:31 -05:00
Kyle Banker 7c4740c47c RUBY-232 handle authentication with connection pooling 2011-01-31 14:47:38 -05:00
Kyle Banker 0d91faf6b1 RUBY-226 minor: license update 2011-01-17 12:26:32 -05:00
Kyle Banker 2b835c0e48 RUBY-227 passwords in URIs can contain all
characters excepts commas now.
2011-01-17 11:05:24 -05:00
Kyle Banker 65f59ba2d6 RUBY-222 Collection#group gets a new, reasonable API 2011-01-06 10:05:19 -05:00
Kyle Banker a197ea7852 RUBY-219 minor: use opts instead of options throughout 2011-01-05 11:30:20 -05:00
Kyle Banker 70bbb6f1fc minor: claification 2011-01-03 14:11:29 -05:00
Kyle Banker b83877527e minor: docs 2010-12-30 15:45:24 -05:00
Kyle Banker 4e5b1a7d23 RUBY-205 RUBY-150 Support new connection URI options 2010-12-30 15:40:50 -05:00
Kyle Banker 39b9656fc4 Fixed request id checking for threaded inserts. 2010-12-15 12:12:51 -05:00
Kyle Banker 95c0fe088f Fully-automated replica set tests. 2010-12-14 17:38:52 -05:00
Kyle Banker 08b7cddc81 Initial ReplSetConnection checking. Refactoring. 2010-12-10 16:00:35 -05:00
Kyle Banker 8aaed130d6 Cleanup for distributed reads on replica sets. 2010-11-24 13:49:34 -05:00
Kyle Banker 1e57ca90e1 Initial commit for reads from rs secondaries 2010-11-16 15:43:59 -05:00
Mislav Marohnić 56f37e49b6 replace usage of `returning` with `each_with_object`
`each_with_object` is a Ruby 1.9 method, here re-implemented in core_ext.rb
in case it's missing (for older Ruby versions). Using `returning` is bad in
combination with Ruby on Rails because each usage of the method will emit
a Rails deprecation warning. This might be considered an Active Support bug,
but it's better to avoid using `returning` altogether and use `tap` from
Ruby 1.8.7, also re-implemented here in case it's missing.

Since existing usages or `returning` were better suited for `each_with_object`
than `tap`, they were rewritten using the former instead.
2010-09-13 01:10:38 +08:00
Kyle Banker a7e2991c31 fix for boolean command response in core server 1.5.2 2010-05-31 22:52:03 -04:00
Kyle Banker 97ee66be02 minor: source file encoding with magic comment 2010-05-07 15:33:27 -04:00
sleverbor ed76126a12 namespaced the OrderedHash class 2010-05-06 18:25:18 -07:00
Kyle Banker 35dac1f31e added find_and_modify helper 2010-04-06 17:56:21 -04:00
Kyle Banker 45d3b91882 exception refinements for bson split 2010-04-05 18:24:31 -04:00
Kyle Banker cc253cc111 minor: fix for assert_valid_keys 2010-04-05 14:22:31 -04:00
Kyle Banker f2bc05f51c merge new bson commits 2010-03-19 15:23:24 -04:00
Charles Remes 18d7d1c699 Split the BSON logic out to a separate gem
- changed the BSON constant to BSON_CODER and scoped it inside
  of a module

- changed the directory layout for all of the BSON related files

- updated the C extension to find the BSON files at their new
  directory locations

- updated the C extension to use better/safer macros for accessing
  the C API; extension now compiles cleanly under rubinius/rbx

- changed directory layout for BSON related tests

- modified the Rakefile to understand the new layout
2010-03-17 14:30:33 -05:00
Kyle Banker 367f9b32cc added indexing options: background, geo, dropDups, etc. 2010-03-16 15:59:26 -04:00
Kyle Banker 9dd1a5c2e3 added authentication support for copy_database 2010-03-16 13:56:30 -04:00
Kyle Banker 2d9e10c192 CBson HashWithIndifferentAccess error 2010-02-27 12:22:34 -05:00
Kyle Banker 3163a340f1 removed deprecated xml_to_ruby 2010-02-23 14:40:38 -05:00
Kyle Banker a7d4d5d277 minor: copy fix 2010-02-23 12:44:50 -05:00
Kyle Banker 5dd2636634 minor: copyright update 2010-02-19 17:41:36 -05:00
Christos Trochalakis 83f2bdf472 Make OrderedHash#to_a preserve order 2010-02-19 11:04:19 -05:00
Kyle Banker fc2ddf3bbd deserialize to RegexpOfHolding only when necessary 2010-02-15 09:47:53 -05:00
Kyle Banker e075d25a91 move id only when necessary RUBY-88 2010-01-28 18:44:50 -05:00
Kyle Banker 329af9e685 minor: OrderedHash hash algorithm fix 2010-01-21 17:35:53 -05:00
Kyle Banker 28227f8ac6 minor: fix for 1.8.6 Complex type checking 2010-01-21 15:42:59 -05:00
Kyle Banker 95d9d6b4f6 Handle unsupported types: Complex, Rational, and BigDecimal RUBY-85 2010-01-21 14:49:20 -05:00
Kyle Banker bf7ffcfa82 support BSON MinKey and MaxKey RUBY-84 2010-01-20 18:50:07 -05:00
Kyle Banker 8c6e0a3591 Raise better error message when trying to serialize TimeWithZone 2010-01-20 12:11:58 -05:00
Durran Jordan 41c680b491 OrderedHash#update should alias to merge bang 2010-01-18 15:29:17 -05:00
Kyle Banker ba2b23476d minor performance improvements 2010-01-14 13:30:38 -05:00
Kyle Banker 74c9862fc9 minor: clean up conversions module 2010-01-08 16:29:06 -05:00
Kyle Banker 5285f9de8f minor: reorganized constants / errors 2010-01-08 15:43:13 -05:00
Kyle Banker 1e183d1f53 deprecated RegexpOfHolding and XMLToRuby 2010-01-07 16:17:34 -05:00
Kyle Banker 42b835243e warn if using Date or DateTime instead of Time 2010-01-06 14:30:58 -05:00
Kyle Banker 2310a878ea doc cleanup and initial move to YARD 2010-01-05 17:42:52 -05:00
Mike Dirolf e013618a8f RUBY-74 raise InvalidDocument for any unrecognized types 2009-12-29 12:59:30 -05:00
Kyle Banker 7bebcd0499 minor: test fixes 2009-12-29 11:31:59 -05:00
Kyle Banker a698415fa5 minor: fixed sort api to allow a single key / direction pair to be specified as an array 2009-12-28 13:43:20 -05:00
Mike Dirolf 9ba194c4b1 minor: fix for 1.9 2009-12-17 12:26:26 -05:00
Mike Dirolf 9e38ef4f8b Merge branch 'master' of github.com:mongodb/mongo-ruby-driver 2009-12-17 12:24:23 -05:00
Kyle Banker 9c68d1c0ab fix for uniq with OrderedHash for Ruby 1.8.6 2009-12-17 12:19:38 -05:00
Mike Dirolf 65c36ca943 null checking for keys and regex patterns, allow nulls for regular strings 2009-12-17 12:17:19 -05:00
Mike Dirolf 9bbaafe03d Just use Regexp#source instead of hacky to_s. Check Regex pattern for NULL bytes 2009-12-17 10:24:58 -05:00
Mike Dirolf 5168692ab9 don't allow NULL byte in key names in ruby encoder 2009-12-17 10:05:38 -05:00
Kyle Banker f8a6d1ebb9 minor: docs, whitespace, naming 2009-12-16 14:16:49 -05:00
Kyle Banker aaf590214c enforce 4MB limit when inserting BSON docs 2009-12-16 11:32:54 -05:00
Mike Dirolf bfb26b3426 minor: update mongo-qa tests for new bson api 2009-12-02 15:49:45 -05:00
Kyle Banker e228be7943 minor: added bytebuffer method to make apis compatible 2009-12-02 12:07:32 -05:00
Kyle Banker d40f445c19 Fixes for 1.9 2009-12-01 17:23:24 -05:00
Kyle Banker 4b849d4b4b divided bson.rb in two 2009-12-01 13:55:04 -05:00
Kyle Banker 05b5fc576b Cleanup w/r/t loading c ext and testing it 2009-12-01 13:49:57 -05:00
Kyle Banker a7c75d7fae Raise error on non utf-8 string in 1.8 2009-11-30 17:06:21 -05:00
Kyle Banker 515594ebf3 Completed deprecation of old sort options, :offset, and Collection#clear 2009-11-23 18:09:13 -05:00
Kyle Banker cd44c3c918 Fixed index ordering 2009-11-17 13:20:57 -05:00
Kyle Banker 039484c263 minor: fixes for benchmarks and byte buffer defaults 2009-11-16 10:40:16 -05:00