Commit graph

584 commits

Author SHA1 Message Date
Victor Denisov
dda10d461b Rework WriteResult for updateMany, deleteMany functions
Merge branch 'update-result'

PR #77

Conflicts:
	CHANGELOG.md
	Database/MongoDB/Query.hs
2017-05-29 19:37:21 -07:00
Victor Denisov
571fe47d82 Test for non multi update 2017-05-29 16:34:35 -07:00
Victor Denisov
9bd0dff6ee Add unit test for upserted 2017-05-29 16:11:25 -07:00
Victor Denisov
a1e19379f6 Add test and fix for updateMany nMatched and nModified 2017-05-29 12:58:39 -07:00
Victor Denisov
50b7fef240 Fix delete count 2017-05-28 12:58:29 -07:00
Victor Denisov
8dac250e10 Add test for correct delete count 2017-05-28 12:38:34 -07:00
Victor Denisov
2984a9b57a Rewrite function in a shorter way 2017-05-21 00:32:13 -07:00
Victor Denisov
161ca964cb Fix wording in docs 2017-05-21 00:31:49 -07:00
Victor Denisov
4f5fa5bd3c Update change log 2017-05-14 00:00:14 -07:00
Victor Denisov
a0416aefba Lift MonadBaseControl restriction
Merge pull request #76 from VictorDenisov/remove_monad_base_control
2017-05-13 23:27:16 -07:00
Victor Denisov
77c7ee3ee9 Drop MonadBaseControl from two more modules 2017-05-11 21:35:41 -07:00
Victor Denisov
282d228ff2 Add changelog entry 2017-05-11 20:38:54 -07:00
Victor Denisov
a1568d9dbf Add mkWeakMVar for Action monad 2017-05-08 23:12:26 -07:00
Victor Denisov
dd6c5057f5 Add modifyMVar for Action monad 2017-05-08 22:48:13 -07:00
Victor Denisov
ef819eb1aa Fix documentation for access function
PR #75
2017-05-07 14:46:22 -07:00
Victor Denisov
d963d89c0b Fix documentation for access function 2017-05-06 23:55:27 -07:00
Victor Denisov
4855793dd7 Rewrite updateBlock 2017-05-01 21:47:40 -07:00
Victor Denisov
1d6d6ca9c0 Rewrite deleteBlock 2017-04-09 22:23:34 -07:00
Victor Denisov
d6419daa50 Move WriteConcernError to Failure 2017-04-09 20:43:55 -07:00
Victor Denisov
2a5bfa44e2 Handle unknown documents in insertMany reply 2017-04-09 20:43:55 -07:00
Victor Denisov
48d8dba4e1 Add compound failure 2017-04-09 20:43:55 -07:00
Victor Denisov
7ae65ce487 Assign ids before insert block 2017-04-09 20:43:55 -07:00
Victor Denisov
b6078cc19d Wrap lines 2017-04-09 20:43:54 -07:00
Victor Denisov
173e90eb90 Don't run ...Many tests against mongo 2.4 2017-04-09 20:43:54 -07:00
Victor Denisov
e2e9f12af8 Adjust index for updateBlock results 2017-04-09 20:43:54 -07:00
Victor Denisov
f57ac94a3b Drop support of mongo 2.6 in updateMany and deleteMany 2017-04-09 20:43:54 -07:00
Victor Denisov
dad19515de Keep old behavior of delete command 2017-04-09 20:43:54 -07:00
Victor Denisov
d1d5f84b22 Keep old behavior of update 2017-04-09 20:43:54 -07:00
Victor Denisov
6a13bde01b Set proper index for exception 2017-04-09 20:43:54 -07:00
Victor Denisov
6013272c5d Rewrite delete comand using interruptible for 2017-04-09 20:43:54 -07:00
Victor Denisov
8db991bb5d Rewrite deleteBlock using WriteResult 2017-04-09 20:43:54 -07:00
Victor Denisov
09c05d4b69 Rename UpdateResult to WriteResult
Many fields of DeleteResult overlap with UpdateResult.
It's better to have only one result for all results, just
like it's done in c mongodb driver.
2017-04-09 20:43:54 -07:00
Victor Denisov
569d8ccc08 Fix list append complexity issue 2017-04-09 20:43:54 -07:00
Victor Denisov
eeb0c7981d Edit comments slightly 2017-04-09 20:43:54 -07:00
Victor Denisov
80ebc6f756 Throw exception when insertAll encounters big doc
- insertAll should throw an exception if it encounters a document
too big for one message. However all other documents will be inserted.

- slightly edit docs
2017-04-09 20:43:54 -07:00
Victor Denisov
bedaa744ba Add indexes to error reporting 2017-04-09 20:43:54 -07:00
Victor Denisov
86f782db72 Insert remaining values in insertAll and then throw exception 2017-04-09 20:43:54 -07:00
Victor Denisov
139a17248f Fix tests 2017-04-09 20:43:54 -07:00
Victor Denisov
a828806940 Indent several lines 2017-04-09 20:43:54 -07:00
Victor Denisov
af49f43027 Fix splitAtLimit 2017-04-09 20:43:54 -07:00
Victor Denisov
e586fd51cc some minor fixes 2017-04-09 20:43:54 -07:00
Victor Denisov
460c7e735b User WriteFailure instead of WriteError 2017-04-09 20:43:54 -07:00
Victor Denisov
c6bd17f1f4 Replace IORefs with interruptibleFor 2017-04-09 20:43:54 -07:00
Victor Denisov
d9db9bca52 Add declaration of interruptibleFor function 2017-04-09 20:43:54 -07:00
Victor Denisov
316ae02ecc Handle errors properly for ordered updates 2017-04-09 20:43:54 -07:00
Victor Denisov
f81d5ec42e Handle exceptions in updateBlock 2017-04-09 20:43:54 -07:00
Victor Denisov
692cdb94c7 Mark update command as failed if there are write concern errors 2017-04-09 20:43:54 -07:00
Victor Denisov
6fe3cd982d Fix unit tests
updateMany and updateAll don't throw exceptions.
They return UpdateResult which reports errors.
2017-04-09 20:43:54 -07:00
Victor Denisov
1898928cf0 Calculate filed total of update command 2017-04-09 20:43:54 -07:00
Victor Denisov
da0441d454 Process legacy command as in mongoc 2017-04-09 20:43:54 -07:00