Commit 176f5f29 authored by Jérome Perrin's avatar Jérome Perrin

pool: disable parallelism

This seem to have race conditions and not ready for production.

We observed some IndexError caused in

    Traceback (most recent call last):
      File "python2.7/lib/python2.7/threading.py", line 801, in __bootstrap_inner
        self.run()
      File "python2.7/lib/python2.7/threading.py", line 754, in run
        self.__target(*self.__args, **self.__kwargs)
      File "rdiff_backup/pool.py", line 47, in worker
        value = task.func(*task.args)
      File "rdiff_backup/restore.py", line 65, in get_diff
        diff = MirrorStruct.get_diff(mir_rorp, target_rorp)
      File "rdiff_backup/restore.py", line 292, in get_diff
        file_fp = cls.rf_cache.get_fp(expanded_index, mir_rorp)
      File "rdiff_backup/restore.py", line 392, in get_fp
        rf = longname.update_rf(self.get_rf(index, mir_rorp), mir_rorp,
      File "rdiff_backup/restore.py", line 388, in get_rf
        else: del self.rf_list[0]
    
apparently because the underlying code is not thread safe in the first
place.
parent fe563b97
......@@ -57,6 +57,7 @@ class Pool(object):
max_taskqueue_size=0, max_jobqueue_size=0):
if processes is None:
processes = cpu_count()
processes = 1 # XXX workaround until race conditions are fixed.
self.processes = processes
# Init queues
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment