Commit graph

454 commits

Author SHA1 Message Date
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
Michael Klishin
b4472e7167 Cosmetics 2014-03-02 14:35:43 +04:00
Michael Klishin
84e76c1e30 Cosmetics 2014-03-02 14:35:01 +04:00
Michael Klishin
c334f206ed $mul operator 2014-03-02 14:33:01 +04:00
Michael Klishin
01e3ad7977 $text is an operator in 2.6 2014-03-02 14:29:32 +04:00
Michael Klishin
3c951a0828 Sync with upstream
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2014-02-08 19:02:02 +04:00
Michael Klishin
0c1fec027d ditto 2014-02-08 19:01:41 +04:00
Michael Klishin
276f0f81d9 ditto 2014-02-08 19:01:37 +04:00
Michael Klishin
f1f46b6983 ditto 2014-02-08 19:01:34 +04:00
Michael Klishin
6758a1d102 ditto 2014-02-08 19:01:30 +04:00
Michael Klishin
4b6ddc5289 ditto 2014-02-08 19:01:27 +04:00
Michael Klishin
d3aedaec03 ditto 2014-02-08 19:01:24 +04:00
Michael Klishin
286a9dc10e ditto 2014-02-08 19:01:20 +04:00
Michael Klishin
bb058bf19a ditto 2014-02-08 19:01:17 +04:00
Michael Klishin
05e7d3727d ditto 2014-02-08 19:01:14 +04:00
Michael Klishin
e065db51d3 ditto 2014-02-08 19:01:11 +04:00
Michael Klishin
5022eeaf4c ditto 2014-02-08 19:01:08 +04:00
Michael Klishin
2bafefd3f3 ditto 2014-02-08 19:01:05 +04:00
Michael Klishin
b2e34e1f57 ditto 2014-02-08 19:01:02 +04:00
Michael Klishin
aa0347cd2e ditto 2014-02-08 19:00:59 +04:00
Michael Klishin
a6912c9db1 ditto 2014-02-08 19:00:56 +04:00
Michael Klishin
962e4c8313 ditto 2014-02-08 19:00:52 +04:00
Michael Klishin
371a209ae3 ditto 2014-02-08 19:00:50 +04:00
Michael Klishin
06be43a8c1 ditto 2014-02-08 19:00:47 +04:00
Michael Klishin
409b13a9fb ditto 2014-02-08 19:00:43 +04:00
Michael Klishin
04d92f35cd ditto 2014-02-08 19:00:40 +04:00
Michael Klishin
7d41ffc47c (c) header 2014-02-08 19:00:38 +04:00
Greg V
47efed8260 Add non-bang version of connect-via-uri 2014-01-30 18:58:36 +03:00
Sean Corfield
6db4eab95c Merge branch 'master' of github.com:seancorfield/monger 2014-01-15 18:41:08 -08:00
Sean Corfield
daace7283c monger.cursor uses monger.core but did not require it first. 2014-01-15 18:41:02 -08:00
Sean Corfield
cb47b7541e Use local binding instead of dynamic global for collection. Fixes #68 2014-01-11 15:57:27 -08:00
Matti Jagula
c81026e308 Added support for $first and $last aggregation operators. 2013-12-04 21:43:40 +02:00
Michael Klishin
938c440764 Don't use :use 2013-11-30 23:45:29 +04:00
Michael Klishin
ea5e1a3b9c Don't use :use 2013-11-30 23:45:02 +04:00
Michael Klishin
d380321e2e Cosmetics 2013-11-30 23:44:40 +04:00
Michael Klishin
8837fb46b9 Cosmetics 2013-11-30 23:44:21 +04:00
Michael Klishin
e540d453a0 Don't use :use 2013-11-30 23:43:50 +04:00
Michael Klishin
12c33ac975 Cosmetics 2013-11-30 23:43:23 +04:00
Michael Klishin
3d89d02e9d Docstring 2013-11-30 23:43:02 +04:00
Michael Klishin
496435c350 Don't use :use 2013-11-30 23:42:42 +04:00
Michael Klishin
b8d5b27054 Cosmetics 2013-11-30 23:42:25 +04:00
Michael Klishin
5c82651bde Docstring 2013-11-30 23:41:55 +04:00
Michael Klishin
cbf198c8bd Cosmetics 2013-11-30 23:41:32 +04:00
Michael Klishin
5d67b374fc Don't use :use 2013-11-30 23:41:12 +04:00
Michael Klishin
61a76bfd1c Don't use :use 2013-11-30 23:40:17 +04:00
Michael Klishin
c23e019ccd Cosmetics 2013-11-30 23:39:48 +04:00
Michael Klishin
30da676626 Docstring 2013-11-30 23:39:25 +04:00
Michael Klishin
109aef0645 Ditto 2013-11-30 23:38:46 +04:00
Michael Klishin
41375af05f Don't use :use 2013-11-30 23:38:22 +04:00
Michael Klishin
19ab7eb8a7 Cosmetics 2013-11-30 23:37:50 +04:00
Michael Klishin
118a6aa872 Cosmetics 2013-11-30 23:37:26 +04:00
Michael Klishin
6ba204a602 Ditto 2013-11-30 20:16:18 +04:00
Michael Klishin
02121379e7 Don't use :use 2013-11-30 20:16:04 +04:00
Michael Klishin
daa8361c91 Cosmetics 2013-11-30 20:15:41 +04:00