Commit Graph

404 Commits

Author SHA1 Message Date
Kyle Banker
b938765ac0 Removed GetMoreMessage and QueryMessage classes with initial refactoring. 2009-10-20 15:44:46 -04:00
Kyle Banker
5586d53c6a minor: Collection#remove should access db directly. 2009-10-20 11:36:51 -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
2d7bae4e0a minor: corrected options for Collection#remove 2009-10-19 17:48:20 -04:00
Kyle Banker
cced8ae5b7 Removed InsertMessage, RemoveMessage, and UpdateMessage, and refactored accordingly. 2009-10-19 17:14:41 -04:00
Kyle Banker
f642b0b3bd Simplified mutex creation 2009-10-19 11:46:59 -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
ec6849fdd8 BUMP 0.15.1 DB#last_status, OrderedHash#each returns self, logger convenience methods, new syntax for sort orders (and deprecate the old syntaxes 2009-10-08 10:12:08 -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
f1bf2eb4d6 BUMP 0.15 Mongo::VERSION constant, logger support, fix for Collection#[], use hard limit for explain, deserialize pre-epoch dates, limit offset and sort methods for cursors, deprecate :offset in favor of :skip, use soft/hard limits correctly 2009-09-30 15:07:28 -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
Mike Dirolf
1b98a1961f minor: credits, doc 2009-09-17 15:07:36 -04:00
mbernstein
e6710621a7 copied docs from sort 2009-09-17 15:07:36 -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
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
b6901673bb always use hard limit for explain() 2009-09-16 10:39:52 -04:00
Mike Dirolf
86d2bf7186 minor: remove superfluous call 2009-09-14 14:28:01 -04:00
Mike Dirolf
833e0eb7da failing test case + fix for Collection#[] 2009-09-14 10:03:26 -04:00
Mike Dirolf
78f0b181e2 minor: clean up 2009-09-11 12:19:03 -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
Cyril Mougel
5860333ed4 improve logger and fix all test with logging system 2009-09-11 00:02:03 +02:00
Cyril Mougel
58e73589bd add require needed if no require before 2009-09-10 23:27:46 +02:00
Cyril Mougel
a7ec07a957 implement a little logger with log time and query 2009-09-10 23:24:06 +02:00
Mike Dirolf
b2595d0c8f add Mongo::VERSION constant 2009-09-10 09:59:06 -04:00
Mike Dirolf
baad067165 minor: doc fix 2009-09-06 16:28:46 -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
e6112703f3 allow scope for reduce function in group 2009-08-26 11:13:40 -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
834a176dbe minor: remove unimplemented methods 2009-08-24 10:55:31 -04:00
Mike Dirolf
604f85513f fix paired connection find master 2009-08-24 10:51:15 -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
6a43aaa94f minor: doc 2009-08-21 11:21:33 -04:00
Mike Dirolf
28e795e9e2 minor: make methods private instead of protected or documented as private but actually public 2009-08-21 11:03:56 -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
fc02435777 minor: spelling 2009-08-20 11:50:11 -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
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
047fc60c91 allow [] on DB, Collection instances to get collections/sub-collections 2009-08-17 11:11:03 -04:00
Mike Dirolf
723f823ea1 API CHANGE _id is aded to hash instances that get inserted / saved 2009-08-14 17:26:50 -04:00
Mike Dirolf
402b895385 find_one takes same options as find 2009-08-14 16:43:12 -04:00
Mike Dirolf
28a80f1b5e Deprecate Collection#find_first in favor of Collection#find_one, also improve docs 2009-08-14 15:39:49 -04:00
Mike Dirolf
6cb8c9f49b API CHANGE Add :safe option for Collection#insert and Collection#save
The API change is minor: Collection#insert({...}, {...}, {...}) no
longer works for inserting multiple documents - instead you must pass
an explicit Array: Collection#insert([{...}, {...}, {...}])
2009-08-14 14:25:29 -04:00
Mike Dirolf
7e0a1b9721 add OrderedHash[] initialization 2009-08-14 11:38:25 -04:00
Mike Dirolf
73233d6589 minor: update save to use Collection#update instead of the deprecated Collection#repsert 2009-08-14 09:54:52 -04:00
Mike Dirolf
23e09141a0 better error checking for database names 2009-08-13 16:26:51 -04:00
Mike Dirolf
431039a82a add InvalidName exception and use that where appropriate 2009-08-13 15:52:11 -04:00
Mike Dirolf
a41a88d0f2 deprecating DB#modify_in_db 2009-08-13 15:24:05 -04:00
Mike Dirolf
64380ad00c Deprecating Collection#modify, Collection#replace and Collection#repsert in favor of Collection#update 2009-08-13 15:18:53 -04:00
Mike Dirolf
4963da9e89 add support for snapshot option to Collection#find 2009-08-11 11:42:34 -04:00
Mike Dirolf
1e4728a77f fix a deadlock with threaded queries 2009-08-10 16:10:52 -04:00
Mike Dirolf
691e65f684 API CHANGE: fixing DB#collection_names() - only return collection name, not full name. only return names of valid collections on this database 2009-08-06 15:52:07 -04:00
Mike Dirolf
fe7d7745c7 add collection name validation 2009-08-04 14:24:18 -04:00
Mike Dirolf
91d6ab4caa rename collection 2009-08-04 14:16:02 -04:00
Mike Dirolf
0a60ad0d7b support for long type in pure ruby [enc|dec]oder 2009-08-03 17:57:44 -04:00
Mike Dirolf
7da51cc317 save returns _id as well 2009-07-28 12:08:29 -04:00
Paul Dlug
6b9b922266 Generate _id on the client side if no _id is provided to insert/save. The generated ObjectID (or array of ObjectID's in the case of a multiple insert) is return. Closes RUBY-22 and RUBY-23.
Signed-off-by: Mike Dirolf <mike@dirolf.com>
2009-07-28 21:53:59 +08:00
Mike Dirolf
6cd976398e minor: c ext return dates as UTC, update credits, tweak last commit 2009-07-16 16:32:57 -04:00
David James
91b1b0ad8f Fix dates to return as UTC.
Signed-off-by: Mike Dirolf <mike@dirolf.com>
2009-07-17 04:26:56 +08:00
Mike Dirolf
73d7b5ea5d GridStore.list to list gridfs files 2009-07-15 10:06:45 -04:00
Mike Dirolf
c6536f0d27 count() is 0 for non-existant collections, not an error 2009-06-18 09:38:55 -04:00
Mike Dirolf
7b0da3cb7e update group 2009-06-08 11:08:59 -04:00
Mike Dirolf
70fb0a6e6a actually send bulk insert messages 2009-06-08 09:52:18 -04:00
Mike Dirolf
e5ce547e87 use repsert instead of checking for document existence, update tests to match new index_information API 2009-06-02 14:37:58 -04:00
Mike Dirolf
cb3823f48f Merge branch 'master' of git://github.com/jnunemaker/mongo-ruby-driver into jnunemaker/master 2009-06-02 14:20:19 -04:00
Mike Dirolf
25e960441b API CHANGE: better, less redundant API for index_information 2009-06-02 11:24:52 -04:00
Mike Dirolf
d87a7da617 BUG RUBY-15 don't check key names on create_index operations 2009-06-02 09:38:31 -04:00
John Nunemaker
13a9cfe83f Merge branch 'mongodb/master' 2009-06-01 23:24:16 -04:00
Mike Dirolf
71d7ff726b don't allow invalid key names on inserts 2009-06-01 17:38:11 -04:00
Jon Crosby
c346ded1aa Fix syntax warning
Signed-off-by: mongodb <mongodb@10gen.com>
2009-06-01 21:19:38 +08:00
John Nunemaker
f95102c2bb Updated save to actually check if id exists in the collection. 2009-05-31 22:45:05 -04:00
John Nunemaker
4cfa9cbcf3 Fixed lack of parenthesis ruby warning that I was receiving on 1.8.6. 2009-05-31 22:17:20 -04:00
John Nunemaker
4d7f06a6be Implemented that index fields can also be specified with symbols. 2009-05-31 22:16:01 -04:00
Mike Dirolf
cabca61e0d previous_error and reset_error_history. snuck in a quick fix to OrderedHash equality 2009-05-26 15:26:20 -04:00
Aman Gupta
2fafddd7fa Add Collection#save 2009-05-15 18:21:10 -07:00
Mike Dirolf
37d6e16fe7 test and fix for BSON w/ negative integers. raise RangeError for out of range ints 2009-05-15 11:19:13 -04:00
Mike Dirolf
a9aa5e5271 fix for pure ruby encoder when _id is a falsey value. more tests 2009-05-12 14:21:17 -04:00
Mike Dirolf
cea73c2712 dereference helper method 2009-04-28 14:55:36 -04:00
Mike Dirolf
29cdfe64f1 add group method on collections 2009-04-27 14:19:38 -04:00
Mike Dirolf
2dffc4b504 don't set _id to default value for hash 2009-04-24 10:03:40 -04:00
Mike Dirolf
02b37f6e48 decoder for data_timestamp 2009-04-22 13:49:56 -04:00
Mike Dirolf
1312c70677 add support for unique index creation 2009-04-21 14:44:57 -04:00
Mike Dirolf
a2898effb4 no longor drop_indexes when we drop_collection 2009-04-16 09:55:50 -04:00
Mike Dirolf
ac4dde5d76 we still need to define ==, even in 1.9 2009-03-23 11:51:35 -04:00
Mike Dirolf
595a9464bb second gem for extensions 2009-03-19 13:54:46 -04:00
Mike Dirolf
5545f3c943 new-style dbref for ruby enc/decoders 2009-03-18 13:30:30 -04:00
Mike Dirolf
db7cb56fc7 remove debugging cruft 2009-03-16 09:38:07 -04:00
Mike Dirolf
2541199903 oops didn't mean to commit this 2009-03-16 08:47:03 -04:00
Mike Dirolf
dccc442edb for now don't try to install extension 2009-03-13 17:24:16 -04:00
Mike Dirolf
13c407cd85 support for db.eval 2009-03-13 11:03:52 -04:00
Mike Dirolf
37044a38f5 rescue a few more types of exceptions 2009-03-12 16:40:02 -04:00
Mike Dirolf
4e06c63972 fix warning 2009-03-12 16:01:13 -04:00
Mike Dirolf
0f546eb5c5 add new code type rather than doing hacks based on field name. use code_w_scope instead of code 2009-03-12 15:34:15 -04:00
Mike Dirolf
7e6e11ba99 only mask socket errors 2009-03-12 14:31:37 -04:00
Mike Dirolf
56fddf79d4 dbrefs only need an oid and a collection, not all this extra cruft... 2009-03-10 14:17:01 -04:00
Mike Dirolf
d0d043323f towards c decoder 2009-03-10 10:23:42 -04:00
Mike Dirolf
8b9bcb1e63 add back in logging and size checks around all socket receive's 2009-03-06 10:02:43 -05:00
Mike Dirolf
1d0fe595c8 equality for ordered hashes 2009-03-05 13:48:15 -05:00
Mike Dirolf
9f2305715e oid encoder 2009-03-05 11:38:08 -05:00
Mike Dirolf
24e695b40d encoder for binary 2009-03-04 17:38:06 -05:00
Mike Dirolf
79b3df3c9e do all recv's in a loop. remove debugging cruft 2009-03-04 14:28:00 -05:00
Mike Dirolf
8b18502cd0 debug logs and assertions 2009-03-04 13:52:09 -05:00
Mike Dirolf
765ed9334e do to_a if it's not a string 2009-03-04 11:16:28 -05:00
Mike Dirolf
3a3109e7dc enough encoders to do bson_benchmark 2009-03-04 11:07:22 -05:00
Mike Dirolf
064ddacd5e c encoder for string types 2009-03-04 10:05:50 -05:00
Mike Dirolf
bdec973ff4 more debugging 2009-03-04 09:35:27 -05:00
Mike Dirolf
c69fbb7f67 checkpoint - beginnings of c encoder 2009-03-03 17:07:22 -05:00
Mike Dirolf
f907edcde5 more stuff to see on failure 2009-03-03 09:59:36 -05:00
Mike Dirolf
0d64ec9de1 temporarily raise a different exception 2009-03-03 09:27:38 -05:00
Mike Dirolf
a5a2e82836 fix breakage when running tests on non-default port. removing ability to specify connections in [port, host] ordering. 2009-03-02 13:37:12 -05:00
Mike Dirolf
9b9f14ce2e overhaul create_index - don't allow clients to specify their own name, allow descending indexes 2009-02-26 12:06:03 -05:00
Mike Dirolf
acfd505061 use fs as root collection, not gridfs 2009-02-18 17:50:07 -05:00
Mike Dirolf
16c8170498 md5 for ruby gridfs too 2009-02-18 14:12:04 -05:00
Geir Magnusson Jr
232a7f7169 Clarify license to be the Apache License v2.0. Was a
mix and the readme still reflected AGPL
2009-02-15 08:24:14 -05:00
Jim Menard
4302de0227 set TCP_NODELAY for db sockets. 2009-02-10 13:32:40 -05:00
Jim Menard
05aafc0de4 Collection#find_first uses :limit => 1 2009-02-10 13:08:15 -05:00
Jim Menard
5aa7202a78 Hard limit values are negative. 2009-02-10 13:04:19 -05:00
Jim Menard
46317fcb6e Explicitly call self.getc/self.putc. 2009-02-10 11:41:36 -05:00
Jim Menard
9a7ed4c3d3 comment 2009-02-09 13:13:13 -05:00
Jim Menard
5c2ef0176e Changed ObjectID#legal_oid_string to ObjectID#legal? 2009-02-09 11:38:24 -05:00
Jim Menard
7de404c8e3 Added Collection#find_first. 2009-02-09 09:46:30 -05:00
Jim Menard
d40c31bb00 comments 2009-02-07 14:36:08 -05:00
Jim Menard
333cf20a20 Removed another $DEBUG warning. 2009-02-05 16:37:35 -05:00
Jim Menard
8ecc8cb305 Remove debug warnings. 2009-02-05 15:59:44 -05:00
Jim Menard
8ef393437c Accept array of field names 2009-02-05 14:24:20 -05:00
Jim Menard
d5f9f024ed Flush after every socket write. Nil out @socket earlier during close. Bumped patch version number. 2009-02-05 09:53:10 -05:00
Jim Menard
04b0b926d4 comments 2009-02-03 12:43:09 -05:00
Jim Menard
768a3ab1a5 Improved Admin#validate_collection, tests, and example. 2009-02-03 12:31:08 -05:00