diff options
author | Tomás Touceda <chiiph@leap.se> | 2014-09-29 13:43:50 -0300 |
---|---|---|
committer | Tomás Touceda <chiiph@leap.se> | 2014-09-29 13:43:50 -0300 |
commit | e2ca6ff9539e2a0294dd1dc2b76879a1ebeb60ba (patch) | |
tree | 0ff727462a387b7a634c2259894dfb1398b968a0 /client | |
parent | 509f76c21c7c847dc4111847a3585be7bb67e350 (diff) | |
parent | 19f28c432f36022c5f1c0558f4742c864e7202c8 (diff) |
Merge remote-tracking branch 'refs/remotes/drebs/bug/5975_fix-transaction-log-order' into develop
Diffstat (limited to 'client')
-rw-r--r-- | client/changes/bug_5975_wait-for-last-request-on-sync | 1 | ||||
-rw-r--r-- | client/src/leap/soledad/client/target.py | 8 |
2 files changed, 8 insertions, 1 deletions
diff --git a/client/changes/bug_5975_wait-for-last-request-on-sync b/client/changes/bug_5975_wait-for-last-request-on-sync new file mode 100644 index 00000000..7a394580 --- /dev/null +++ b/client/changes/bug_5975_wait-for-last-request-on-sync @@ -0,0 +1 @@ + o Wait for last post request to finish before starting a new one (#5975). diff --git a/client/src/leap/soledad/client/target.py b/client/src/leap/soledad/client/target.py index ae2010a6..651d3ee5 100644 --- a/client/src/leap/soledad/client/target.py +++ b/client/src/leap/soledad/client/target.py @@ -1176,6 +1176,7 @@ class SoledadSyncTarget(HTTPSyncTarget, TokenBasedAuth): synced = [] number_of_docs = len(docs_by_generations) + last_request_lock = None for doc, gen, trans_id in docs_by_generations: # allow for interrupting the sync process if self.stopped is True: @@ -1212,7 +1213,7 @@ class SoledadSyncTarget(HTTPSyncTarget, TokenBasedAuth): # end of symmetric encryption # ------------------------------------------------------------- t = syncer_pool.new_syncer_thread( - sent + 1, total, last_request_lock=None, + sent + 1, total, last_request_lock=last_request_lock, last_callback_lock=last_callback_lock) # bail out if any thread failed @@ -1249,7 +1250,12 @@ class SoledadSyncTarget(HTTPSyncTarget, TokenBasedAuth): # save thread and append t.start() threads.append((t, doc)) + + # update lock references so they can be used in next call to + # syncer_pool.new_syncer_thread() above last_callback_lock = t.callback_lock + last_request_lock = t.request_lock + sent += 1 # make sure all threads finished and we have up-to-date info |