- 25 Jul, 2019 2 commits
-
-
Andreas Braun authored
-
Andreas Braun authored
-
- 23 Jul, 2019 1 commit
-
-
Jeremy Mikola authored
-
- 16 Jul, 2019 4 commits
-
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
- 15 Jul, 2019 2 commits
-
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
- 13 Jul, 2019 1 commit
-
-
Jeremy Mikola authored
-
- 11 Jul, 2019 8 commits
-
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
Inconsistent behavior for advancing the ChangeStream's key after a resume token error will be addressed by PHPLIB-456.
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
Added ChangeStream::getResumeToken() method (PHPLIB-435), which returns the cached resume token. postBatchResumeToken and startAfter (introduced in PHPLIB-407) can now be used for resuming. Replaced TailableCursorIterator with ChangeStreamIterator. In addition to avoiding getMore commands when calling rewind(), the new class also tracks the size of each cursor batch so it can capture the postBatchResumeToken from getMore commands. Refactored the resume process such that Watch now exclusively constructs the inner iterator for ChangeStream. UnexpectedValueException is now thrown if firstBatch and nextBatch fields are not found in aggregate and getMore responses, respectively.
-
Jeremy Mikola authored
-
- 09 Jul, 2019 6 commits
-
-
Jeremy Mikola authored
-
Jeremy Mikola authored
Tests were revised to no longer expect rewind() to encounter an error and resume. In most tests, rewind() is a NOP because the change stream has no events to return upon creation. Since Watch now always executes aggregate commands with APM, the check for startAtOperationTime support was moved to createResumeCallable(). We continue to only capture operationTime from the very first aggregate command. Various assertions for current() returning null were also changed to instead check valid(). Both forms are equivalent, but checking valid() is more consistent with our iteration examples.
-
Jeremy Mikola authored
This can be used to ensure rewinding is a NOP (i.e. getMore will not be executed) for tailable cursors with an empty firstBatch.
-
Jeremy Mikola authored
This will avoid spurious test failures due to timing and ensure that each acknowledged write is returned in the next change stream iteration.
-
Jeremy Mikola authored
-
Jeremy Mikola authored
Note: this does not address using the startAfter option for resuming. That will be implemented in PHPLIB-411 with the introduction of a resume token accessor method and support for postBatchResumeToken.
-
- 03 Jul, 2019 6 commits
-
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
Aggregate::execute() already checks for this. This also adds a note in CollectionFunctionalTest that watch() is prohibited within a transaction, as is done for other methods.
-
- 02 Jul, 2019 9 commits
-
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
The wire version check is for the startAtOperationTime $changeStream option. Operation time itself is supported since MongoDB 3.6 (introduced with sessions and casual consistency).
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
Jeremy Mikola authored
-
- 25 Jun, 2019 1 commit
-
-
Jeremy Mikola authored
-