Commit Graph

605 Commits

Author SHA1 Message Date
Kyle Banker 68af3dbe8f Allow the setting of safe mode globally on the Connection,
DB, and Collection levels. The safe mode setting will
automatically be inherited down the hierarchy Connection ->
DB -> Collection -> (insert, update, remove). This default
can be overridden at any time. Connection#safe, DB#safe, and
Collection#safe will yield the current default value.
2010-11-03 17:36:08 -04:00
Kyle Banker d6f8f9d41a Allow specification of replica set name on connect.
Raise ReplicaSetConnectionError if expected name doesn't match set.
2010-11-03 15:12:15 -04:00
Kyle Banker 54a3cbb308 minor: test validates that we remove duplicate _id only on insert. 2010-11-02 15:40:40 -04:00
Kyle Banker 5aa8721b25 Allow idiomatic :drop_dups in addition to :dropDups
on index creation.

Don't raise exception if :dropDups results in duplicate key error.
2010-11-02 14:50:02 -04:00
Kyle Banker e416e05fc7 RUBY-190 bug fix for unavailable nodes on Connection#multi 2010-10-21 14:33:48 -04:00
Kyle Banker 9098070502 minor: more consistent naming in connection tests 2010-10-21 13:32:47 -04:00
Kyle Banker a905c3f1f2 RUBY-191 fix to pass options to new db with Connection#db 2010-10-21 13:27:57 -04:00
Kyle Banker afe8fe3167 RUBY-193 don't create gridfs indexes when slave_ok 2010-10-21 13:01:32 -04:00
Kyle Banker dd02b12282 minor: test updates for JRuby in 1.9 mode 2010-10-14 16:11:30 -04:00
Kyle Banker dfaa82f5d1 minor: test fix 2010-10-13 18:27:19 -04:00
Kyle Banker d1a0f90b5e minor: hash_with_indifferent fix 2010-10-13 18:13:47 -04:00
Kyle Banker 80044b9a58 RUBY-187 All tests can now use custom host and port;
Minor test fixes.
2010-10-13 17:09:23 -04:00
Kyle Banker cd03fafb27 RUBY-187 ByteBuffer should take another ByteBuffer as initial data 2010-10-13 17:08:45 -04:00
Kyle Banker 0c8d27c0b2 minor: added missing tests 2010-10-12 15:41:24 -04:00
Kyle Banker df0377c3d4 JRuby Test fixes 2010-10-12 15:39:28 -04:00
Kyle Banker 7b3ba5e006 minor: whitespace 2010-10-07 17:46:19 -04:00
Kyle Banker 0c82f01d97 JRuby: validate key names and only move _id when necessary. 2010-10-07 17:42:39 -04:00
Kyle Banker 13f49585e9 RUBY-185 fix JRuby null pointer exception on embedded docs
Better HashWithIndifferentAccess tests
2010-10-07 17:05:45 -04:00
Kyle Banker 3a0cdf64af remove deprecated support for implicit 2010-10-04 14:37:19 -04:00
Kyle Banker b3ed1486e5 minor: updates for removal deprecated DB and Connection methods and ObjectID 2010-10-04 13:28:26 -04:00
Kyle Banker 7ad280c2cb RUBY-184 Connection#locked? 2010-10-04 11:38:20 -04:00
Kyle Banker 3b5aac6de6 Encoder number handling cleanup 2010-10-01 16:29:31 -04:00
Kyle Banker 694f011087 BSON test suite cleanup 2010-10-01 16:29:12 -04:00
Kyle Banker 315e608cd4 Optimized callback class to return Java objects 2010-10-01 09:52:29 -04:00
Kyle Banker 2a7b089a9b BSON for JRuby 2010-09-30 09:43:17 -04:00
Kyle Banker 4141331f79 RUBY-184 fsync lock helpers 2010-09-28 12:15:45 -04:00
Kyle Banker a20d0c5f98 minor: test fix getlasterror 2010-09-13 11:12:26 -04:00
Hongli Lai (Phusion) c8726ca150 Optimize MongoDB::Cursor#construct_query_message. 2010-09-13 10:51:15 -04:00
Hongli Lai (Phusion) bde53f1e20 Optimize ByteBuffer: use binary string as underlying storage instead of array. 2010-09-13 10:51:02 -04:00
Hongli Lai (Phusion) 3e77299ec1 Improve ByteBuffer unit tests. 2010-09-13 10:50:50 -04:00
Hongli Lai (Phusion) 05772177f7 Fix DB#error and DB#last_status deprecation warnings in unit tests. 2010-09-13 10:48:08 -04:00
Hongli Lai (Phusion) b9de2eaa5c When possible, have BSON::ByteBuffer store the underlying binary data as a binary String instead of an array.
This dramatically improves the performance of BSON::ByteBuffer.new(a_string).
On Ruby 1.9.2 it is about 130 times faster.
2010-09-09 15:59:17 -04:00
Kyle Banker 7309d7e48b Path fixes for test in Ruby 1.9.2 2010-09-09 15:58:51 -04:00
Kyle Banker d0e97a2863 minor: remove deprecated ObjectID references in tests 2010-09-09 14:27:34 -04:00
Kyle Banker 36c71ef48e RUBY-180 Fix batch size 2010-09-09 14:12:12 -04:00
Kyle Banker 300b442a94 Create logging message only when a logger is passed to the Connection.
Results in a pretty significant performance improvement.

Many thanks to Matt Taylor for noticing the unusual glut of calls
to ObjectId#to_s. See here: http://unhalting.com/?p=18
2010-09-08 14:27:27 -04:00
Kyle Banker 5838b9aef7 RUBY-173 allow HashWithIndifferentAccess 2010-08-28 12:19:26 -04:00
Kyle Banker 2eaca6bc8e RUBY-172 fix for OrderedHash#clone 2010-08-27 15:50:42 -04:00
Kyle Banker 0a0d5d2e39 minor: fix enumerator text for Ruby 1.9 2010-08-27 06:23:07 -04:00
Kyle Banker 6b2939f2f7 RUBY-171 allow Cursor#to_a even after iterating; added Cursor#rewind; consistent Enumberable behavior for Cursor 2010-08-26 12:35:42 -04:00
Kyle Banker 9eee412213 minor: test fix for change is core server cursorInfo command 2010-08-24 17:03:38 -04:00
Kyle Banker 02a0c7c2dc RUBY-165 raise error if BSON.serialize is passed something other than a hash 2010-08-24 14:01:24 -04:00
Kyle Banker c7c309b00d RUBY-158 deprecate BSON::ObjectID for BSON::ObjectId 2010-08-24 12:49:23 -04:00
Kyle Banker 4bebf72fd3 minor: unit test fix 2010-08-24 12:06:23 -04:00
Kyle Banker 5cbec4e5b6 RUBY-161 accessors for hosts in a replica set by node type 2010-08-24 11:20:54 -04:00
Kyle Banker bacb1ee69e RUBY-167 fix OrderedHash#reject 2010-08-23 14:19:32 -04:00
Kyle Banker feb09547e7 minor: move slave connection test to auxillary 2010-08-05 09:14:38 -04:00
Kyle Banker 01db44304d minor: test fix 2010-08-05 08:58:11 -04:00
Kyle Banker b8137c7833 minor: test fix 2010-08-04 18:18:55 -04:00
Kyle Banker 640f1c0ba5 minor: slave connect test fix 2010-08-04 18:12:25 -04:00
Kyle Banker db8ddd059b minor: silence some warning due to deprecaton 2010-08-04 16:47:13 -04:00
Kyle Banker f1f0c87b3b minor: fixes for db commands with new DB#command checking response 2010-08-04 16:21:41 -04:00
Kyle Banker e9de3e56ea RUBY-139 add new sub-type 0. Will become default with the release of mongod 1.8 2010-08-04 15:39:31 -04:00
Kyle Banker 065517ac29 Fixed test bug; better replication ack tests; deprecated DB#error and DB#last_status for DB#get_last_error 2010-08-02 18:19:54 -04:00
Kyle Banker 66e9508f61 Connection#send_message should return bytes sent 2010-07-27 22:19:25 -04:00
Kyle Banker 24355977f5 Working replica set tests 2010-07-21 15:27:45 -04:00
Kyle Banker 969ec6f644 Don't check keys on Collection#map_reduce 2010-07-21 08:23:55 -04:00
Kyle Banker 0afa5aa412 Initial replica set support 2010-07-19 12:07:46 -04:00
Kyle Banker c9573f05ad minor: fix default timeout option 2010-07-16 14:04:13 -04:00
Kyle Banker f62a54416d test for RUBY-152 2010-07-13 14:49:59 -04:00
Kyle Banker 86c50a0555 Removed deprecated options and methods. 2010-07-12 14:31:12 -04:00
Kyle Banker 265f074f10 RUBY-147 check for CursorNotFound response flag 2010-07-12 12:11:01 -04:00
Kyle Banker 0460491863 minor: test fix 2010-07-09 16:01:55 -04:00
Kyle Banker c25f1f5997 RUBY-144 allow map_reduce to return raw command (and not just instantiated results collection) 2010-07-09 15:29:11 -04:00
Kyle Banker f22e81414b RUBY-141 raise exception if attempting to overwrite with Grid#put (only in safe mode) 2010-07-09 13:33:26 -04:00
Kyle Banker 20206bee2b Merge remote branch 'neo/system-js' 2010-07-09 12:49:46 -04:00
Kyle Banker bb7cb79030 minor: fix for to_json 2010-07-07 17:04:45 -04:00
Rimas Silkaitis f62e9e6732 Added helper functions to create and remove stored js functions in system.js 2010-07-03 11:24:24 -07:00
Kyle Banker 2121d6c809 minor: cleaner output for cursor inspect 2010-07-02 17:24:45 -04:00
Kyle Banker 078372f869 minor: test description 2010-06-25 06:10:17 -05:00
Ryan Angilly a7de4f2eed make BSON::OrderedHash equal to other types of hashes in both directions 2010-06-24 12:52:28 -05:00
Lincoln Stoll 6e3cc639f6 Allow hypens and underscores in URL credentials. 2010-06-24 12:51:16 -05:00
Kyle Banker 95dee31368 minor: text fix 2010-06-24 12:46:24 -05:00
Kyle Banker 4712a68468 RUBY-133 maximum insert size 2010-06-15 10:24:31 -04:00
Kyle Banker 51140f8ea1 minor: support dash in host name on parse_uri 2010-06-14 22:06:55 -04:00
Kyle Banker c28b126267 RUBY-132 ensure socket closes on connect to master 2010-06-14 18:56:44 -04:00
Kyle Banker 31d2483294 RUBY-137 specify index name 2010-06-14 14:20:12 -04:00
Kyle Banker 67a56b64eb fixed connection uri bug (Sunny Hirai) 2010-06-12 10:11:29 -04: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 99c2d1463e RUBY-131 read bson io object; b2json executable (neomantra) 2010-05-28 14:01:51 -04:00
Kyle Banker b33755fd46 RUBY-130 2010-05-24 11:43:44 -04:00
Kyle Banker 924a275ea3 check command response by default; better DB#command api 2010-05-18 16:17:17 -04:00
Kyle Banker 653d156a8a better object id representation for inspect 2010-05-18 12:22:19 -04:00
Mike Dirolf d68e42812e respect Encoding.default_internal in BSON decoder 2010-05-07 15:15:52 -04:00
Kyle Banker 06c7934675 RUBY-127 2010-05-07 15:15:52 -04:00
sleverbor ed76126a12 namespaced the OrderedHash class 2010-05-06 18:25:18 -07:00
Kyle Banker 7b89523315 added Grid#exist? and GridFileSystem#exist? RUBY-122 2010-05-05 11:07:52 -04:00
Kyle Banker 56661c4c66 minor: docs 2010-05-04 16:06:06 -04:00
Kyle Banker 065d97ca1c Replication acknowledgment RUBY-126 2010-05-04 16:00:05 -04:00
Kyle Banker 797fada848 make sure we support 2010-05-03 17:40:55 -04:00
Kyle Banker 60f72937fd minor: removed deprecated @grid.put syntax 2010-04-28 16:21:39 -04:00
Kyle Banker 55ebf36c1d minor: removed deprecation warning for new create_index api 2010-04-28 15:16:33 -04:00
Kyle Banker 494d451857 RUBY-123 check index types 2010-04-16 15:59:34 -04:00
Kyle Banker cc0192b2cc represent inspected ObjectID using extended JSON format 2010-04-13 11:30:13 -04:00
Kyle Banker acc42dce65 RUBY-115 tailable cursors 2010-04-12 13:53:18 -04:00
Kyle Banker 860ab356d2 RUBY-121 2010-04-12 12:01:50 -04:00
Kyle Banker 910a82de7e must use Connection.paired for paired connections 2010-04-07 17:10:28 -04:00
Kyle Banker e18d2d6fbb removed deprecated RegexpOfHolding 2010-04-07 16:32:25 -04:00
Kyle Banker fd43eca514 unique indexes for GridFS chunks collections 2010-04-07 15:53:38 -04:00
Kyle Banker cd32dabd52 added GridFileNotFound and GridMD5Failure exceptions 2010-04-07 14:39:05 -04:00
Kyle Banker 3133380341 allow arbitrary attirbutes in files collection 2010-04-07 13:54:49 -04:00
Kyle Banker 84fb41c39f added Collection#stats and DB#stats 2010-04-06 18:29:39 -04: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 a4c72ffa5d minor: removed deprecated group argument 2010-04-05 17:30:51 -04:00
Kyle Banker 2e78eb6c66 RUBY-118 2010-04-05 15:48:35 -04:00
Kyle Banker 63b0dfc6c9 test fixes for move to bson gem 2010-04-05 11:07:01 -04:00
Kyle Banker 1e8e0c02fe removed deprecated GridStore class 2010-04-05 10:50:27 -04:00
Kyle Banker c4d5cb641b renamed mongo_bson to bson 2010-04-05 10:39:55 -04:00
Kyle Banker 40b481ad3c RUBY-111 2010-03-31 15:16:12 -04:00
Kyle Banker a07662a898 minor: removed test for bad comparison in windows 2010-03-31 14:24:14 -04:00
Kyle Banker 30b6ca6270 minor: better test names 2010-03-30 13:51:05 -04:00
Kyle Banker 85fd06f990 options to delete old versions of GridFileSystem files 2010-03-30 13:22:22 -04:00
Kyle Banker 284c442c46 filename is now optional for Grid#put RUBY-116 2010-03-30 11:54:23 -04:00
Kyle Banker b87e3dd3fb docs and tests for fields option with a hash 2010-03-27 08:58:16 -07:00
Houdini 33f4aca658 More flexible :fields option, supporting {}
This allows exact definition of the fields you want included in the query results. For example :fields => {:name => 1, :people => 0} will include the name key but exclude the people key.
2010-03-26 13:58:18 -07:00
Kyle Banker a94a870202 log messages read like valid ruby driver code 2010-03-23 22:40:43 -07:00
Mike Dirolf aa86c03bd5 test and fix for Grid#delete 2010-03-23 17:00:31 -04:00
Kyle Banker 6139c27df0 included old BSON constant for deprecation warning 2010-03-19 18:10:18 -04:00
Kyle Banker 372f578389 minor: test fix 2010-03-19 16:00:17 -04:00
Kyle Banker f2bc05f51c merge new bson commits 2010-03-19 15:23:24 -04:00
Kyle Banker 4008752b02 RUBY-113 allow has_next for cursors 2010-03-19 14:31:31 -04:00
Kyle Banker 3e8c8d5c93 added error checking for array of arrays on index creation 2010-03-19 14:31:10 -04:00
Kyle Banker acdcf6a823 test demonstrating new features in 1.4 2010-03-19 14:05:31 -04:00
Charles Remes dfe93cb65c Fixed a require path for OrderedHash which is now under mongo_bson 2010-03-17 16:06:42 -05:00
Charles Remes a9b3c8e7a5 Try again: 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:55:19 -05: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 38d6401d1a warn if saving zero-length file 2010-03-15 18:25:46 -04:00
Kyle Banker 8faa243484 added sort to query logging RUBY-101 2010-03-15 11:51:22 -04:00
Kyle Banker 0709b98082 Rails 3 HashWithIndifferentAccess fixes 2010-03-02 11:11:07 -05:00
Kyle Banker 2d9e10c192 CBson HashWithIndifferentAccess error 2010-02-27 12:22:34 -05:00
Kyle Banker fb3ed36188 minor: test fixes 2010-02-25 16:40:48 -05:00
Kyle Banker c0e8a525bd reauthenticate on reconnect 2010-02-25 14:58:32 -05:00
Kyle Banker 3479317098 raise exception on authentication failure 2010-02-24 13:05:45 -05:00
Kyle Banker 60832b7895 removed unneeded test 2010-02-23 21:20:19 -05:00
Kyle Banker f126518566 use mime types only if we can load it 2010-02-23 18:25:28 -05:00
Kyle Banker ff63165bdd content type detection for gridfs 2010-02-23 18:03:11 -05:00
Kyle Banker d40767bdd4 minor: test object id inspect 2010-02-23 16:22:48 -05:00
Kyle Banker b9e8bb4e03 remove deprecated Admin class 2010-02-23 13:12:14 -05:00
Kyle Banker d6111f535c removed deprecated Cursor#next_object 2010-02-23 13:09:36 -05:00
Kyle Banker a8e3a80fde test fixes for deprecations 2010-02-23 13:06:48 -05:00
Kyle Banker 8f90cbfbf7 Collection#group as eval deprecation final stage 2010-02-23 12:42:17 -05:00
Kyle Banker 25b783a0c8 test case for RUBY-99 2010-02-23 11:16:11 -05:00
Kyle Banker 1d0cc7aae2 added safe more for gridfs 2010-02-22 18:06:59 -05:00
Kyle Banker 89fe06250e re-require shoulda; gridfs decoupling 2010-02-22 15:49:04 -05:00
Kyle Banker 54a68c7438 minor: removed shoulda dependency 2010-02-19 19:17:38 -05:00
Kyle Banker 0368e79c74 minor: tests use proper naming convention. test fix 1.8.6 2010-02-19 18:00:03 -05:00
Kyle Banker 43452da5c6 minor: docs 2010-02-19 17:05:52 -05:00
Kyle Banker 6a09b141fd streaming for new gridfs api 2010-02-19 16:20:46 -05:00
Christos Trochalakis 83f2bdf472 Make OrderedHash#to_a preserve order 2010-02-19 11:04:19 -05:00
Kyle Banker 16ea148ab1 More experimental GridFS improvements 2010-02-18 16:31:25 -05:00
Kyle Banker 5d1d110280 fixed bug on safe remove; style fixes 2010-02-17 16:48:23 -05:00
Kyle Banker f176a45a20 Connection.from_uri and Connection.paired. Connection API enhancement. 2010-02-17 15:15:07 -05:00
Kyle Banker fc2ddf3bbd deserialize to RegexpOfHolding only when necessary 2010-02-15 09:47:53 -05:00
Kyle Banker 32606db5e9 minor: test fix 2010-02-12 18:41:34 -05:00
Kyle Banker f158aa13af Initial GridFS refactoring 2010-02-12 18:03:07 -05:00
Kyle Banker 7863b37f07 minor: fix for default root collection on gridfs 2010-02-08 17:04:35 -05:00
Kyle Banker a6310a0a4f not logging binary data RUBY-90 2010-02-08 13:48:18 -05:00
Kyle Banker aad2f5508c class accessors for default root collection RUBY-93 2010-02-08 13:04:28 -05:00
Kyle Banker 8495e75e5e fixed reconnect for queries 2010-02-04 18:03:12 -05:00
Kyle Banker e075d25a91 move id only when necessary RUBY-88 2010-01-28 18:44:50 -05:00
Kyle Banker f6e505e511 Methods for adding and removing users RUBY-89 2010-01-28 16:39:40 -05:00
Kyle Banker d71f7d4e3a support MongoDB extended JSON on ObjectID#to_json 2010-01-22 14:56:00 -05:00
Kyle Banker 05342ef8f2 ObjectID#from_time RUBY-82 2010-01-22 14:24:17 -05:00
Kyle Banker 4530adce49 minor: adjusted pooled threading test for windows 2010-01-22 11:52:41 -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 33c848f67a minor: test fix for Rational class 2010-01-21 15:09:54 -05:00
Kyle Banker 002b036c39 minor: test fix for Complex class 2010-01-21 15:02:03 -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 80afca2fe2 Check in connections on operation exceptions RUBY-83 2010-01-20 12:40:16 -05:00
Kyle Banker 8c6e0a3591 Raise better error message when trying to serialize TimeWithZone 2010-01-20 12:11:58 -05:00
Kyle Banker 47c0c38495 updated docs / tests for safe remove 2010-01-19 11:14:07 -05:00
Matt Powell 3b30cde0fb GridStore#mv 2010-01-19 11:14:07 -05:00
Durran Jordan 41c680b491 OrderedHash#update should alias to merge bang 2010-01-18 15:29:17 -05:00
Kyle Banker f9ec4eca1d YARD and more specific exceptions for DB 2010-01-11 18:12:46 -05:00
Kyle Banker 67969720e0 minor: fixed require 2010-01-11 13:12:09 -05:00
Kyle Banker 3a6865e172 minor: db class cleanup 2010-01-08 19:11:49 -05:00
Kyle Banker 16eae214bd minor: test fix 2010-01-06 15:01:59 -05:00
Kyle Banker 42b835243e warn if using Date or DateTime instead of Time 2010-01-06 14:30:58 -05:00
Kyle Banker 77df695bca deprecated Admin class; admin method now available in DB class 2010-01-06 13:51:12 -05:00
Kyle Banker 990c00b261 removed old mongo-qa tests 2010-01-05 18:00:34 -05:00
Kyle Banker 870892e04f minor: fix for passing tests 2009-12-31 12:57:01 -06:00
John Nunemaker 8ab4e77a81 Added to_json for Mongo::ObjectID. 2009-12-31 12:37:57 -06:00
Kyle Banker e82e81e6f8 minor: adjusted thread pooling test timeout 2009-12-29 14:04:32 -05:00
Mike Dirolf e013618a8f RUBY-74 raise InvalidDocument for any unrecognized types 2009-12-29 12:59:30 -05:00
Kyle Banker 1b189336a6 minor: test tweaks for windows 2009-12-29 12:22:01 -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
Kyle Banker 3858e70518 minor: fixes for pooling; updated history 2009-12-21 09:06:28 -05:00
Kyle Banker 5c1b3aed0f simplified connection pooling 2009-12-18 17:29:44 -05:00
Kyle Banker c15e8c2d7d enabled keyf support for Collection#group 2009-12-18 14:49:16 -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 7655a2c424 deprecated Cursor#next_object for Cursor#next_document 2009-12-16 18:09:48 -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
Kyle Banker 0acafa2fdf minor: mapreduce test added, check for version 2009-12-16 11:01:35 -05:00
Kyle Banker 2fb5c92b60 minor: cleanup 2009-12-15 16:40:40 -05:00
Kyle Banker ce1d93096c GridStore performance improvements (Sunny Hirai) 2009-12-15 14:13:04 -05:00
Kyle Banker 87726fe74c minor: whitespace 2009-12-14 13:58:42 -05:00
Kyle Banker f633e8ad69 Added query option for Collection#distinct 2009-12-14 13:57:22 -05:00
Kyle Banker 570305c46b minor: added array#uniq test for OrderedHash 2009-12-14 12:56:29 -05:00
Kyle Banker 1cbb5d01ef minor: added grid store length accessor 2009-12-11 10:02:38 -05:00
Mike Dirolf d268595584 tests + fixes for using nil _id's 2009-12-08 17:52:15 -05:00
Mike Dirolf a9bb31e392 minor: whitespace 2009-12-08 17:52:07 -05:00
Kyle Banker 8f2e25f8d3 added custom exception for illegal object ids 2009-12-08 17:13:54 -05:00
Blythe Dunham 3df52cc927 Add support for the finalize option of the group command 2009-12-06 15:45:42 -08:00
Kyle Banker f0766c9d2e minor: allow oplog. collection 2009-12-04 16:35:12 -05:00
Kyle Banker 4550389480 Added generation_time method on ObjectID 2009-12-03 17:45:53 -05:00
Kyle Banker 23bb6c2192 minor: added tests for nonstandard port 2009-12-02 16:43:30 -05:00
Mike Dirolf 2204e42956 minor: unnecessary branch 2009-12-02 15:56:50 -05:00
Mike Dirolf bfb26b3426 minor: update mongo-qa tests for new bson api 2009-12-02 15:49:45 -05:00
Mike Dirolf 20c8082e90 minor: more tests that already pass (at least in pure ruby) 2009-12-02 10:52:28 -05:00
Mike Dirolf 6cfae57738 minor: don't need the call to 'first' here 2009-12-02 10:25:46 -05:00
Mike Dirolf 1423abea7b minor: test that already passes (at least w/o mongo_ext) for 1.9 string encoding conversion 2009-12-02 10:08:26 -05:00
Kyle Banker 948fb58384 minor: coding to encoding 2009-12-01 17:29:22 -05:00
Kyle Banker d40f445c19 Fixes for 1.9 2009-12-01 17:23:24 -05:00
Kyle Banker 05b5fc576b Cleanup w/r/t loading c ext and testing it 2009-12-01 13:49:57 -05:00
Mike Dirolf 7709e127bf no need for separate CBson tests. just run with RUBYOPT=rubygems and mongo_ext installed 2009-11-30 18:05:15 -05:00
Kyle Banker f029cdde6a added test case for cbson utf-8 2009-11-30 17:50:54 -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 a3cbacc99b minor: Docs, cleanup, history. 2009-11-25 11:26:30 -05:00
Christos Trochalakis b1b61d5c0b Added support for map-reduce 2009-11-25 11:26:29 -05:00
Mike Dirolf 36423240a6 minor: oops parens were still giving a warning 2009-11-25 10:35:06 -05:00
Mike Dirolf 6151f95cd5 minor: remove paren warning 2009-11-25 10:25:56 -05:00
Mike Dirolf fc0248e94f minor: whitespace 2009-11-25 10:25:28 -05:00
Kyle Banker cdb60b378f Fixes for 1.9.1 compatibility. 2009-11-24 16:13:14 -05:00
Kyle Banker 072b025cdc Updates for connection-pooled operations on replica pairs. 2009-11-24 15:20:51 -05:00
Kyle Banker ab0d189832 Simplified message sending methods names; organized Connection 2009-11-24 14:23:43 -05:00
Kyle Banker 3bdd3fdd53 Removed some unused methods. 2009-11-24 14:04:39 -05:00
Kyle Banker 20562e96ab Tests passing for connection pooling. 2009-11-24 13:47:37 -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 fcbdfdf8e4 Doc cleanup; merge cleanup 2009-11-23 16:03:33 -05:00
Kyle Banker 11a92349e9 Merged branch for initial connection pooling code 2009-11-23 15:20:05 -05:00
Kyle Banker 7890d6e146 Fixes for replica pairs. 2009-11-23 13:13:14 -05:00
Kyle Banker 12454d04ad Fixes for replica pairs (unstable) 2009-11-20 17:48:41 -05:00
Kyle Banker cd44c3c918 Fixed index ordering 2009-11-17 13:20:57 -05:00
Kyle Banker db1f382150 Added #hash method for ObjectID. 2009-11-11 10:47:42 -05:00
Kyle Banker 867783c665 Added support for multi-update (available in mongo >= 1.1.3) 2009-11-05 16:08:54 -05:00
Kyle Banker f891b4ece3 Updates and insert in safe mode are now thread-safe. 2009-11-05 15:14:48 -05:00
Kyle Banker 20ed768460 added tests for copy_database 2009-11-04 11:57:03 -05:00
Kyle Banker 68bb1d2060 minor: Initial collection unit tests. Logging message update. 2009-11-02 15:50:16 -05:00
Kyle Banker 44ff6c5918 Checking response on buildinfo command. 2009-11-02 13:22:46 -05:00
Kyle Banker 9976e5c340 minor: fixed buildinfo test for 1.0 2009-10-28 16:40:27 -04:00
Kyle Banker 5a81cb70ee Added Collection#distinct [RUBY-61] 2009-10-27 14:05:45 -04:00
Kyle Banker f47db82767 minor: fix for parentheses warnings 2009-10-26 16:41:17 -04:00
Kyle Banker 5c6f53e408 Added server version checking. Updated tests for compatibility > 1.1.3 2009-10-26 14:54:33 -04:00
Cyril Mougel bffc59ffb4 fix test on cursor 2009-10-23 23:30:30 +02:00
Mike Dirolf 0f0c0e569d minor: test for duplicate _id (as string and symbol) 2009-10-22 16:12:42 -05:00
Kyle Banker 1e8f3176bf minor: update collection.clear test 2009-10-22 14:47:40 -04:00
Kyle Banker 67b7f6b375 Refactored Query class into Cursor class. 2009-10-22 14:10:12 -04:00
Kyle Banker de5c078cec Finished removing Message classes. Made Cursor#close threadsafe. 2009-10-21 10:11:33 -04:00
Kyle Banker b938765ac0 Removed GetMoreMessage and QueryMessage classes with initial refactoring. 2009-10-20 15:44:46 -04:00
Kyle Banker e40d9cec3c Deprecated Collection#clear in favor of Collection#remove. Introduced shoulda and mocha for upcoming tests. 2009-10-20 11:31:07 -04:00
Kyle Banker cced8ae5b7 Removed InsertMessage, RemoveMessage, and UpdateMessage, and refactored accordingly. 2009-10-19 17:14:41 -04:00
Kyle Banker 4e2781faf1 Raise exception if connecting to single slave with slave_ok set to false; pass slave_ok on to queries when set to true. 2009-10-15 12:25:25 -04:00
Kyle Banker c6d4150a51 Added option to disable cursor timeout on Collection#find when #find is invoked with a block. 2009-10-14 14:38:44 -04:00
Kyle Banker 5ea585a475 Created alias Collection#size for Collection#count 2009-10-13 16:20:41 -04:00
Mike Dirolf 4fdcad1327 cleanup and credits 2009-10-08 10:05:06 -04:00
Durran Jordan 20f65039f3 Updating sorting to new syntax 2009-10-08 10:03:19 -04:00
John Nunemaker 89d420780f Added logger convenience methods to connection and database. Makes it possible to use the logger instance in the driver from the outside world. 2009-10-08 21:13:59 +08:00
Les Hill 454bb440e4 OrderedHash#each returns self not ordered_keys 2009-10-05 21:35:02 +08:00
Mike Dirolf 79e76be9df add DB#last_status method 2009-10-01 12:01:37 -04:00
Mike Dirolf de6fef357b driver was sending hard limits where it should've sent soft, and vice-versa. fix and add tests for this 2009-09-30 10:49:08 -04:00
Mike Dirolf 70c23e2d32 deprecate :offset option to find in favor of :skip 2009-09-17 16:45:03 -04:00
Mike Dirolf 2b701119e1 complete deprecation of a bunch of stuff 2009-09-17 15:28:45 -04:00
Mike Dirolf f41b48a51b minor: tweaks and some more test cases 2009-09-17 15:07:37 -04:00
mbernstein d1e45fdb1a casting input from sort method as ordered hash, tweaking tests a bit 2009-09-17 15:07:36 -04:00
mbernstein bdafae6eeb Added sort() method to Cursor Class, with tests and docs. 2009-09-17 15:07:36 -04:00
Mike Dirolf 3321a90739 remove redundant num_to_return from Cursor class. credits. clean up last commit 2009-09-16 17:52:41 -04:00
Kyle Banker c397758d1d Added #limit and #offset methods for cursor objects
Signed-off-by: Mike Dirolf <mike@dirolf.com>
2009-09-17 05:38:00 +08:00
Mike Dirolf c82a7e32af minor: another place we need to ignore the ArgumentError 2009-09-16 16:28:52 -04:00
Mike Dirolf 4fec23fcf1 ignore ArgumentError in this test 2009-09-16 16:12:20 -04:00
Mike Dirolf d95971b20b tests + fix for deserializing pre-epoch dates w/ pure Ruby BSON deserializer - thanks chendo 2009-09-16 12:53:46 -04:00
Mike Dirolf 833e0eb7da failing test case + fix for Collection#[] 2009-09-14 10:03:26 -04:00
Mike Dirolf 903e7136cf no logger by default. don't log timing because it's misleading for queries. add tests and documentation for logger 2009-09-11 12:12:24 -04:00
Mike Dirolf 3a726c34cc minor: get rid of warnings 2009-09-04 17:30:28 -04:00
Mike Dirolf 902c3120c8 decode strings as UTF-8 when using C extension on 1.9 2009-09-04 11:02:04 -04:00
Mike Dirolf 1124c05f1f DB#collections method, thanks to Durran Jordan and Les Hill 2009-08-27 16:29:41 -04:00
Mike Dirolf 4bdfa6efd2 bump extension version in preparation for main bump 2009-08-26 14:21:59 -04:00
Mike Dirolf e6112703f3 allow scope for reduce function in group 2009-08-26 11:13:40 -04:00
Mike Dirolf 46a8f78ce5 minor: test that already passes 2009-08-26 10:57:14 -04:00
Mike Dirolf 47c34266cf Change string representation of ObjectID - add 'legacy' methods for interacting with old strings 2009-08-25 14:56:02 -04:00
Mike Dirolf e05c9fc5da use correct ObjectID generation - no change to ordering yet though 2009-08-25 10:30:14 -04:00
Mike Dirolf 496af2be9c fix for count when find has fields specified 2009-08-24 17:21:49 -04:00
Mike Dirolf fd3b927771 API CHANGE no longer save internal array for to_a - means you can't call each or to_a after calling to_a already, doc updates 2009-08-21 14:11:59 -04:00
Mike Dirolf 94fe53d96b DEPRECATE Mongo::Mongo in favor of Mongo::Connection 2009-08-20 18:48:09 -04:00
Mike Dirolf b5d71d9702 add back in XGen::Mongo paths with deprecation warning on include - THIS WILL BE REMOVED 2009-08-20 14:03:25 -04:00
Mike Dirolf e65dd99667 API CHANGE: moving XGen::Mongo::Driver and XGen::Mongo to Mongo and XGen::Mongo::GridFS to GridFS 2009-08-20 10:50:48 -04:00
Mike Dirolf 040ba7c9c2 add command option for Collection#group 2009-08-19 15:54:53 -04:00
Mike Dirolf c6969fcb4d eval raises OperationFailure on error. test for group that already passes 2009-08-19 15:37:29 -04:00
Mike Dirolf c49c208bff fix for Collection#group 2009-08-19 15:18:42 -04:00
Mike Dirolf bb13fbe687 use nil for BSON undefined instead of useless Undefined class. deprecate Undefined class 2009-08-19 15:18:02 -04:00
Mike Dirolf 66e8d1a13b Collection#find takes an optional block to ensure cursors get closed. Some doc updates for find 2009-08-19 11:51:30 -04:00
Mike Dirolf e64b7f3679 if fields is [] return just _id 2009-08-19 09:57:15 -04:00
Mike Dirolf dcda70fddd don't send a getmore immediately after every query 2009-08-18 17:36:53 -04:00
Mike Dirolf 2ef660986d MINOR: missed this when updating tests 2009-08-18 11:53:35 -04:00
Mike Dirolf 7b4e51e825 deprecate DB#count and passing a selector to Collection#count 2009-08-18 11:48:16 -04:00
Mike Dirolf 103224b800 add Cursor#count method 2009-08-18 11:26:58 -04:00
Mike Dirolf 256e64c4a3 minor: test that already passes 2009-08-18 10:20:16 -04:00
Mike Dirolf fc49e8c982 move tests -> test 2009-08-18 10:07:01 -04:00