Cancel scanning
Reported by Ben Hood | 2011-04-21 15:12:18 UTC
Currently there is no way to cancel a running sync - the only way to stop a sync is to stop the agent. Hence we need to ability to cancel a sync. This involves making a sync quasi-transactional in order to prevent the correlation store from getting corrupted by half finished sync operations. One way to do this is to sync into a private index segment and then perform a merge with the main index as part of the commit process. The idea here is to reduce the performance penalty of making the (already expensive) sync operation atomic.
Comments and changes to this ticket
-

Ben Hood 2011-05-27 16:17:21 UTC
- Title changed from Cancel syncing to Cancel scanning
-

Ben Hood 2011-05-31 22:41:05 UTC
(from [5a8c127e068b265b91681f19461a4bf6558defdb]) [#207] Removed some caught exceptions that should get passed onto the exception mapper https://github.com/lshift/diffa/commit/5a8c127e068b265b91681f19461a...
-

Ben Hood 2011-06-02 13:50:28 UTC
(from [b406da9527e785f3b44ae1ae1a078b7247821c41]) [#207] Started work on this ticket, stashing work remotely so that I can work on something else https://github.com/lshift/diffa/commit/b406da9527e785f3b44ae1ae1a07...
-

Ben Hood 2011-06-02 17:57:39 UTC
(from [bec8653e72914d03e09a00669cb0cfa152689e4b]) [#207] First cut of buffering match event and discarding mismatch events whilst in the scanning state https://github.com/lshift/diffa/commit/bec8653e72914d03e09a00669cb0...
-

Ben Hood 2011-06-02 19:06:00 UTC
(from [3173dddc016024d450f3f74b93d62f3cc5a28507]) [#207] Added handling of a cancel message in the pair actor https://github.com/lshift/diffa/commit/3173dddc016024d450f3f74b93d6...
-

Ben Hood 2011-06-02 23:57:51 UTC
(from [c439e262a4d23d813d1cebbc7ac9bb2dc616277a]) [#207] Added tests for cancelling scans https://github.com/lshift/diffa/commit/c439e262a4d23d813d1cebbc7ac9...
-

Ben Hood 2011-06-03 00:07:50 UTC
(from [10a62b92f9c08118558190caa82d08cc9f46771d]) [#207] Renamed the call to cancel a scan https://github.com/lshift/diffa/commit/10a62b92f9c08118558190caa82d...
-

Ben Hood 2011-06-03 15:24:36 UTC
(from [d24f0ce5b2e937d58c60fb137f73703c9e4039d8]) [#207] Implement scanning test over REST https://github.com/lshift/diffa/commit/d24f0ce5b2e937d58c60fb137f73...
-

Ben Hood 2011-06-03 16:30:42 UTC
(from [ff43df284c919adacbd23a068bdb51796a3bfadd]) [#207] Added extra smoke test for scanning an existing pair https://github.com/lshift/diffa/commit/ff43df284c919adacbd23a068bdb...
-

-

Ben Hood 2011-06-03 17:13:30 UTC
- Milestone cleared.
- State changed from new to resolved
- Assigned user set to Paul Jones
- Milestone order changed from 48 to 0
The REST functionality for cancellations is now implemented. In order to fast track this ticket, I've left out the update to the Settings page, but #240 marks this as a todo -> resolving this ticket
-

Paul Jones 2011-06-04 16:16:09 UTC
- State changed from resolved to open
- Assigned user changed from Paul Jones to Ben Hood
QA notes attached to pull request.
-

-

Ben Hood 2011-06-05 15:58:50 UTC
(from [11547c2cb2a2d7197e949eaf05d2f29cba8c7cda]) [#207] Updated writer to non-deprecated API; fixed initialization bug that somehow wasn't provoked in Lucene 3.0.2 https://github.com/lshift/diffa/commit/11547c2cb2a2d7197e949eaf05d2...
-

Ben Hood 2011-06-05 19:41:21 UTC
(from [a11c864972818814dddf5ebcdf2ab277fc448881]) [#207] Added cancellation to the VersionPolicy https://github.com/lshift/diffa/commit/a11c864972818814dddf5ebcdf2a...
-

Ben Hood 2011-06-06 11:28:07 UTC
(from [6fbcbb47902f6adba9b9cb3d4383cb7ed070518f]) [#207] Downgrade Lucene 3.2.0 -> 3.0.3 because I can't get it to work https://github.com/lshift/diffa/commit/6fbcbb47902f6adba9b9cb3d4383...
-

Ben Hood 2011-06-06 11:49:06 UTC
- State changed from open to resolved
I've addressed the QA comments on the pull request and have made some new comments there as well -> resolving.
-

-

Ben Hood 2011-06-06 19:23:15 UTC
(from [3afe54e06f8b319ae75cbe875145e80c333e5352]) [#207] Refactored the PairActor to try to make it less verbose https://github.com/lshift/diffa/commit/3afe54e06f8b319ae75cbe875145...
-

-

Ben Hood 2011-06-06 19:38:26 UTC
(from [54f236f53346f6e8502daa8c7852ba7aa78aaeb3]) [#207] Make both nested receive loops more symmetric https://github.com/lshift/diffa/commit/54f236f53346f6e8502daa8c7852...
-

Ben Hood 2011-06-06 19:52:19 UTC
- Assigned user changed from Ben Hood to Paul Jones
Further refactoring to reduce the verbosity of the actor receive loops and wrap the cancellation variable.
-

Ben Hood 2011-06-07 14:46:06 UTC
(from [88f86892521978f617f4c3d70ccbd933824ca96a]) [#207] Fix for deferrable commands that arrive during a cancellation phase https://github.com/lshift/diffa/commit/88f86892521978f617f4c3d70ccb...
-

Ben Hood 2011-06-07 14:53:11 UTC
Re-resolving due to further bug fix:
- Changes propagated to the actor during a cancellation were not being matched by type and hence would be classified as spurious messages
- Enhanced the cancellation test in the PairActorTest for it to push through a change whilst the actor is cancelling and verify that no further invocation against the underlying policy is made
- Refactored the actor scan loop to save the back reference to the original sender
-

-

Ben Hood 2011-06-08 14:49:29 UTC
(from [d455924fbe593f2bf5b93c30ac6ee1c985ce4e30]) [#207] Match on instances of Scan Messages https://github.com/lshift/diffa/commit/d455924fbe593f2bf5b93c30ac6e...
-

Ben Hood 2011-06-10 08:41:37 UTC
(from [ccb2b40436a4f2456e3565f421acb1240decd044]) [#207] Make use of the UUIDs generated as part of the scans to prevent spurious messages triggering behaviours. https://github.com/lshift/diffa/commit/ccb2b40436a4f2456e3565f421ac...
-

Ben Hood 2011-06-10 09:47:20 UTC
(from [a4226a934354a337fc814ae72bfa88cca8da581e]) [#207] Don't start off with an initial active scan uuid. https://github.com/lshift/diffa/commit/a4226a934354a337fc814ae72bfa...
-

Ben Hood 2011-06-10 10:15:08 UTC
(from [124af2c5fc39d82f501c590826d1a01983c5f5d2]) [#207] Re-open IndexWriter after rollback, add test to validate rollback. https://github.com/lshift/diffa/commit/124af2c5fc39d82f501c590826d1...
-

Ben Hood 2011-06-10 10:15:08 UTC
(from [b74d21c4e09dd6554a371f3abeba82d05293334e]) [#207] Don't use an explicit cancellation receive loop, track outstanding scans in a map https://github.com/lshift/diffa/commit/b74d21c4e09dd6554a371f3abeba...
-

Ben Hood 2011-06-10 10:15:13 UTC
(from [8a20a75df55c92d35673923b1520ef7e1d768b26]) [#207] Remove unused AlertCode. https://github.com/lshift/diffa/commit/8a20a75df55c92d35673923b1520...
-

Ben Hood 2011-06-10 15:43:07 UTC
207-2 looks fine so I've merged it into 207. Do you have some more review work to do or should I merge this into master?
-

-

Paul Jones 2011-06-10 16:40:32 UTC
- State changed from resolved to closed
I think we're there => QA+
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป
A Real Time Differencing Tool.
People watching this ticket
Referenced by
-
206
Updating the config can take a long time
This issue may depend on #207 landing first.
-
207
Cancel scanning
(from [5a8c127e068b265b91681f19461a4bf6558defdb])
[#207] ...
-
207
Cancel scanning
(from [b406da9527e785f3b44ae1ae1a078b7247821c41])
[#207] ...
-
207
Cancel scanning
(from [bec8653e72914d03e09a00669cb0cfa152689e4b])
[#207] ...
-
207
Cancel scanning
(from [3173dddc016024d450f3f74b93d62f3cc5a28507])
[#207] ...
-
207
Cancel scanning
(from [c439e262a4d23d813d1cebbc7ac9bb2dc616277a])
[#207] ...
-
207
Cancel scanning
(from [10a62b92f9c08118558190caa82d08cc9f46771d])
[#207] ...
-
207
Cancel scanning
(from [d24f0ce5b2e937d58c60fb137f73703c9e4039d8])
[#207] ...
-
207
Cancel scanning
(from [ff43df284c919adacbd23a068bdb51796a3bfadd])
[#207] ...
-
207
Cancel scanning
(from [cf3db1252979a8899410b5e1d1aea75b225c49a4])
[#207] ...
-
240
Add scan cancel button to the Settings page
#207 added the ability to cancel a scan via a
REST call. ...
-
207
Cancel scanning
(from [73025069c78017818a9f460a6202a220495ff073])
[#207] ...
-
207
Cancel scanning
(from [11547c2cb2a2d7197e949eaf05d2f29cba8c7cda])
[#207] ...
-
207
Cancel scanning
(from [a11c864972818814dddf5ebcdf2ab277fc448881])
[#207] ...
-
207
Cancel scanning
(from [6fbcbb47902f6adba9b9cb3d4383cb7ed070518f])
[#207] ...
-
242
Move pure scanning related REST calls to ScanningResource
The ScanningResource was introduced as part of #207, but ...
-
207
Cancel scanning
(from [bde64fd0e65c8cf8c05cb839e23ee3972ef9df64])
[#207] ...
-
249
Scan status update in the UI
#207 introduced the FeedbackHandle, but the
status update...
-
207
Cancel scanning
(from [3afe54e06f8b319ae75cbe875145e80c333e5352])
[#207] ...
-
207
Cancel scanning
(from [c6e864e6471b5a90d0a504ea49547e38a6f8f9e9])
[#207] ...
-
207
Cancel scanning
(from [54f236f53346f6e8502daa8c7852ba7aa78aaeb3])
[#207] ...
-
207
Cancel scanning
(from [88f86892521978f617f4c3d70ccbd933824ca96a])
[#207] ...
-
207
Cancel scanning
(from [80f442fd955e9b982c737426830fd7f18328fe39])
[#207] ...
-
207
Cancel scanning
(from [d455924fbe593f2bf5b93c30ac6ee1c985ce4e30])
[#207] ...
-
207
Cancel scanning
(from [ccb2b40436a4f2456e3565f421acb1240decd044])
[#207] ...
-
207
Cancel scanning
(from [a4226a934354a337fc814ae72bfa88cca8da581e])
[#207] ...
-
207
Cancel scanning
(from [124af2c5fc39d82f501c590826d1a01983c5f5d2])
[#207] ...
-
207
Cancel scanning
(from [b74d21c4e09dd6554a371f3abeba82d05293334e])
[#207] ...
-
207
Cancel scanning
(from [8a20a75df55c92d35673923b1520ef7e1d768b26])
[#207] ...
-
207
Cancel scanning
(from [b05cfbb51f3cc0ee722d798e8066b1f09f85c443])
Merge [...