From: Brian Warner Date: Sat, 14 Jul 2007 02:30:21 +0000 (-0700) Subject: storage.py: handle num_segments != power-of-two without an assertion X-Git-Url: https://git.rkrishnan.org/pf/content/en/service/reedownlee?a=commitdiff_plain;h=9fc687cdfc6e48a39568f660d664fc173c582ac4;p=tahoe-lafs%2Ftahoe-lafs.git storage.py: handle num_segments != power-of-two without an assertion --- diff --git a/src/allmydata/storage.py b/src/allmydata/storage.py index b5acdee4..80196807 100644 --- a/src/allmydata/storage.py +++ b/src/allmydata/storage.py @@ -185,7 +185,8 @@ class WriteBucketProxy: self._segment_size = segment_size self._num_segments = num_segments - self._segment_hash_size = (2*num_segments - 1) * HASH_SIZE + effective_segments = mathutil.next_power_of_k(num_segments,2) + self._segment_hash_size = (2*effective_segments - 1) * HASH_SIZE # how many share hashes are included in each share? This will be # about ln2(num_shares). self._share_hash_size = num_share_hashes * (2+HASH_SIZE)