Commit graph

42 commits

Author SHA1 Message Date
Greg Weber
45a0e8e9e2 add findAndModify command 2013-06-06 08:00:00 -07:00
Timo von Holtz
83cae75efc Added Support for Aggregate Framework 2013-05-24 00:15:56 +02:00
Amit Aryeh Levy
5ce857a4db Make sure 7.6 modifications stil compile with 7.4 2012-10-23 16:49:29 -04:00
Amit Aryeh Levy
ed0c264a35 GHC 7.6 Support
lifted-base no longer contains addMVarFinalizer
2012-10-19 02:29:10 -07:00
Fedor Gogolev
4ae4f793e3 Function eval returns Val v instead of Document
Fixes #1
2012-07-09 08:26:58 +04:00
Fedor Gogolev
dd6a3010f6 Cleaned up imports 2012-06-10 23:47:14 +04:00
Fedor Gogolev
17f528e835 Use text instead of compact-string-fix 2012-05-08 19:13:25 +04:00
Tony Hannan
5e015dc769 Merge pull request #14 from yesodweb/show-AccessMode
show instance for AccessMode
2012-01-28 15:50:53 -08:00
Greg Weber
6ef19663cf show instance for AccessMode 2012-01-27 12:48:54 -03:00
Tony Hannan
2f23e78c28 Use MVar from lifted-base 2012-01-23 20:45:10 -05:00
Tony Hannan
d0aeb42e7c merge duplicate code 2012-01-23 19:45:42 -05:00
Michael S. Craig
fa95b65fad Fix for bad behavior when using TailableCursor.
`Database.MongoDB.Query.next` and `nextBatch` prefetch a promise of the next
batch of documents from the server whenever the current batch has been
exhausted. The following call to `next` or `nextBatch` fulfills that promise
(thereby turning it into a concrete batch of documents) and then returns one or
more documents in the batch.

The old behavior was to raise an exception if an empty batch with a nonzero
cursor ID was encountered. This is normal when using tailable cursors, so a
change was required.

Now, `Nothing` is returned with the still-live cursor ID, instead of raising
the exception. Also, prefetched empty batches with nonzero cursor IDs are
refetched once per call to avoid stale data.

This new prefetching behavior does not affect the performance of `next`, except
when calling it repeatedly on a tailable cursor with no new data. In those
(generally avoidable) cases, each call to `next` results in two server calls
instead of one.
2011-12-13 11:02:57 -05:00
Nathan Howell
b18f81f431 Updating to monad-control-0.3, with help from Bas van Dijk.
Conflicts:

	Database/MongoDB/Query.hs
2011-12-05 09:23:39 -08:00
Tony Hannan
d506011cd1 fix some warnings. bump version for previous 7.2.1 compatibility fix 2011-11-10 10:23:07 -05:00
Ryan Trinkle
ccd217053b fix missing record field in P.Request value
the fields of a Database.MongoDB.Internal.Protocol.Query were not filled in by RecordWildcard on line 411 of Database/MongoDB/Query.hs because the record fields were not in scope
2011-10-27 15:24:37 -04:00
Tony Hannan
efb6b65506 QueryFailure error code 2011-09-07 12:09:20 -04:00
Michael Snoyman
a320c363e4 Move to monad-control 2011-08-25 16:29:39 +03:00
Tony Hannan
4307fea5aa collect ids from insert lazily in case not used 2011-08-18 19:41:32 -04:00
Tony Hannan
c99cb54251 Partial results option 2011-07-22 10:38:50 -04:00
Tony Hannan
17ceb53234 tailable cursor 2011-07-22 10:31:24 -04:00
Tony Hannan
58f83838de Cursor nextBatch 2011-07-21 18:50:52 -04:00
Tony Hannan
5e4a8aee3f insertAll (KeepGoing) 2011-07-21 16:39:19 -04:00
Tony Hannan
acb0d62aa2 Intro to Haskell article (first draft) 2011-07-14 18:47:14 -04:00
Tony Hannan
8025ac4ec4 Small edits to some comments. fix secondaryOk to return master only when no secondaries available 2011-07-13 15:34:52 -04:00
Tony Hannan
8672652395 move Pool to System.IO. update docs 2011-07-12 10:51:54 -04:00
Tony Hannan
23fdaee494 renamed docs/ to doc/ 2011-07-08 22:33:52 -04:00
Tony Hannan
91c88c0a14 combined read & write mode into a single access mode. newtyped Action monad. liftDB for monads stacked on top of Action. fetch op 2011-07-08 22:13:47 -04:00
Tony Hannan
9f48c26384 Simplify! Removed Context and Throw monad classes. Removed embedded pool from replica-set. Not backwards-compatible, starts new major version 1.x 2011-07-05 10:37:01 -04:00
Tony Hannan
f7ae5b7235 MapReduce updated to work with MongoDB version >= 1.7.4 2011-06-22 17:18:32 -04:00
Tony Hannan
a399e81925 Access monad no longer needs to be a MonadMVar 2011-01-26 14:25:12 -05:00
Tony Hannan
73012bb430 Single param Network instance. NetworkIO instance of IO that yields Internet so user does not have to supply it 2010-12-27 00:23:02 -05:00
Tony Hannan
111d9a2f72 Abstract network communication so we can capture and replay messages if desired. Also, remove dependence on deprecated ImpredicativeTypes. 2010-12-19 21:08:53 -05:00
Tony Hannan
8da53a3fa3 Use Monad.MVar. Remove Delayed wrapper around promise. 2010-11-01 15:35:13 -04:00
Tony Hannan
36cc86fd70 Rename Connection to ConnPool. Edit tutorial and some comments 2010-10-31 20:38:38 -04:00
Tony Hannan
583f8330c7 Fix compile warnings 2010-10-27 16:46:11 -04:00
Tony Hannan
de32b22b4f Connection pooling and some refactoring 2010-10-27 16:13:23 -04:00
Tony Hannan
2568f9e530 remove a couple shadow warnings 2010-07-27 17:30:52 -04:00
Tony Hannan
3a7f235246 Slight API refactoring. Fix spinning pipeline when other end disconnects. Handle response flags correctly 2010-07-27 17:18:53 -04:00
Tony Hannan
6435bc3cd9 Handle response flags correctly, plus some comment changes 2010-07-03 13:15:30 -04:00
Tony Hannan
c9dc87ad33 Slight redesign: pipelining with writeMode instead of exclusive access with getLastError 2010-06-21 11:06:20 -04:00
Tony Hannan
d0ddc814a9 Change comments to reflect new knowledge that a cursor persists across connections, and map/reduce temp output is accessible from all connections as long as original remains alive 2010-06-15 16:15:37 -04:00
Tony Hannan
3e4065cd97 See V0.5.0-Redesign.md for description of changes in this commit 2010-06-14 23:14:40 -04:00