Commit graph

407 commits

Author SHA1 Message Date
Michael Klishin
51baa3e154 Adhere to the existing code style 2015-06-27 23:16:11 +03:00
Michael Klishin
4ff7d05aa4 monger.credentials/for => monger.credentials/create
To make sure we don't shadow clojure.core/for when monger.credentials
is required with :refer :all.
2015-06-27 22:39:01 +03:00
Bartek Marcinowski
15f50408a9 Merge branch 'add_options_to_aggregate'
Merge implementation of aggregation framework options and explanation of
aggregation query plan.

Conflicts:
	src/clojure/monger/collection.clj
2015-06-24 16:05:47 +01:00
Bartek Marcinowski
f0946acd75 Enable query plan explanation for the aggregation framework
Add the explain-aggregate function, which returns a map containing
information about the given aggregation query.
2015-06-24 15:51:24 +01:00
Bartek Marcinowski
136dea00b2 Add allow-disk-use and cursor options to aggregate
Reimplement aggregate on top of the Java driver's DBCollection#aggregate
in order to return a cursor for the results. This allows users to
overcome the 16MB result size limit and specify the cursor batch size.
The allowDiskUse can also be passed to Mongo, through the allow-disk-use
key. The maxTime option enables setting a limit (in milliseconds) on the
execution time of the query, through the max-time key.
2015-06-24 15:47:46 +01:00
Joshua Karstendick
9c0f385ab2 Fixes a bug with the 5-arity ensure-index function. The argument
named `name` shadowed clojure.core/name, so trying to call `name`
as a function on line 426 throws an exception. Fixes the bug by
renaming the argument to `index-name`.
2015-06-23 17:21:12 -04:00
Michael Klishin
94029c7f6c Support aggregation options, closes #102 2015-06-23 22:01:06 +03:00
Ivan Samsonov
126c9f8503 Connect via uri in core/connect if it is passed
core/connect ignores :uri key and tries to connect 127.0.0.1:27017 instead.
Patch fix this behaviour by checking uri key existance and trying to connect
by uri if it's provided.
2015-06-15 02:45:11 +03:00
Michael Klishin
a2b1ddb054 Update license headers 2015-06-06 19:15:01 +03:00
Michael Klishin
5651c2ee97 This is no longer necessary
Since we no longer support Clojure 1.3.
2015-05-18 06:33:16 -07:00
Tom McMillen
602b6e3ce9 Add JSON serialization of BSONTimestamp 2015-05-17 13:27:40 -07:00
Michael Klishin
3e71b6ffc7 Commit monger.credentials 2015-05-17 18:53:14 +03:00
Michael Klishin
8b2fd956e4 Rework authentication for the 3.0 client and multiple server versions
When authentication failures, MongoDB Java client throws a timeout
exception whose cause is a failed command exception which carries
a reason. Still not great at authentication failure notification.
2015-05-17 18:51:44 +03:00
Michael Klishin
6ca5b9d4ba monger.search is gone
Full text search in 3.0 is supported via regular queries
with the $text operator.
2015-05-16 15:38:41 +03:00
Michael Klishin
a107f1f8b7 Adapt for Java driver 3.0 2015-05-11 01:36:24 +03:00
Michael Klishin
3c63209ab1 Make sure hint isn't set to nil
MongoDB 3.0 is not as lenient about it.
2015-05-11 01:20:56 +03:00
Michael Klishin
05dd57731a Adapt to 3.0 2015-05-11 01:20:18 +03:00
Michael Klishin
26be7bb1b9 Make command-test pass 2015-05-11 01:19:47 +03:00
Michael Klishin
0b72761b44 Adapt monger.{core,collection} and tests to recent changes
Down to 50 failures and 11 errors in `lein test`.
2015-02-22 19:26:27 +03:00
Michael Klishin
8511d3714d Reduce monger.result to two functions: acknowledged? and
`updated-existing?`

`ok?` and other variations are now all superceded by `acknowledged?`,
`WriteConcern/ACKNOWLEDGED` is the recommended way of ensuring safe
writes.
2015-02-22 19:24:51 +03:00
Michael Klishin
d9e6be671a Monger's DBRef cannot work with com.mongodb.DBRef without fundamental re-thinking
com.mongodb.DBRef#fetch was removed.
2015-02-22 19:24:10 +03:00
Michael Klishin
2128f2cd6c getLastError is gone in the 3.0 driver 2015-02-22 18:52:31 +03:00
Michael Klishin
a1f3566632 Correct docstring example 2014-11-19 15:16:52 +00:00
Robin Heggelund Hansen
1c62587165 Fixes #77: Add update-by-ids function to mongo.collection 2014-10-21 06:06:06 +02:00
Stijn Opheide
b0accb8447 Exclude clojure.core/update from monger.collection.
clojure.core/update was introduced in clojure 1.7. To avoid clashing
with monger.collection/update it has to be excluded in the latter
namespace.
2014-10-17 13:04:37 +04:00
Michael Klishin
2c05d4c9d5 Remove the deprecation note since it is only confusing these days 2014-10-11 03:40:40 +04:00
Robin Heggelund Hansen
00dad8d0fb Allow object-id to convert string to object-id 2014-08-07 01:23:30 +02:00
Juha Jokimäki
2c019e5e91 Support for $each modifier 2014-07-18 14:47:37 +03:00
Michael Klishin
f846cd0a51 Make mongo-options take a map instead of pseudo-kwards, extract mongo-options-builder 2014-06-15 17:39:32 +04:00
Michael Klishin
59427e29bb Cosmetics 2014-06-15 17:31:35 +04:00
Michael Klishin
e8b5ba5dd6 Cosmetics 2014-06-15 17:29:31 +04:00
Deamon Wang
6330cee24a fix doc error for update 2014-05-18 12:10:05 +08:00
Michael Klishin
6206308fa8 WriteConcern/SAFE was renamed (and is the default, so not very demonstrative) 2014-05-13 05:06:23 +04:00
Michael Klishin
d7902c9618 Query DSL tests now pass 2014-05-11 13:10:56 -04:00
Michael Klishin
9752950d82 Add extra arities to several update functions 2014-05-11 12:50:15 -04:00
Michael Klishin
a3954f3847 Require options in monger.collection to be maps (pseudo-kwargs are no longer supported) 2014-05-10 17:55:28 -04:00
Michael Klishin
b1e874aa87 monger.fn can go now since we rely on ClojureWerkz Support 2014-05-10 17:43:43 -04:00
Michael Klishin
56eebda3fd GridFS tests now pass, plus API improvements that make sense for 2.0 2014-05-10 17:34:22 -04:00
Michael Klishin
a7cceebe9c Search tests now pass 2014-05-10 17:04:55 -04:00
Michael Klishin
8b237db382 Cosmetics 2014-05-10 17:04:38 -04:00
Michael Klishin
42ca0efa5c Cosmetics 2014-05-10 17:04:28 -04:00
Michael Klishin
ab4a9a381f Compile 2014-05-10 16:48:25 -04:00
Michael Klishin
d99b6c52aa monger.cache tests now pass 2014-05-10 16:45:36 -04:00
Michael Klishin
e04c694e3c monger.core/authenticate should not require a connection 2014-05-10 16:35:58 -04:00
Michael Klishin
9ad38a9e7a Require connection/db/gridfs as an explicit argument (initial pass) 2014-05-10 16:27:52 -04:00
Michael Klishin
04e6c5bce6 Get rid of monger.multi, the entire API will now require a conn/db/gridfs arg 2014-05-10 16:27:28 -04:00
Michael Klishin
1e9463e466 Remove testkit 2014-05-10 16:26:59 -04:00
Michael Klishin
555ac53d22 Introduce a way to run "raw" commands (using DBObjects) 2014-03-02 21:31:26 +04:00
Michael Klishin
4b417ec15a Mention that monger.result should no longer be used on WriteConcern instances as of 1.8 2014-03-02 14:57:25 +04:00
Michael Klishin
5d5c5dbced Change default write concern to ACKNOWLEDGED
Recommended by MongoDB docs, also forward compatibility with MongoDB 2.6.
2014-03-02 14:39:19 +04:00