]> git-server-git.apps.pok.os.sepia.ceph.com Git - teuthology.git/commitdiff
suite/matrix: make code py2/py3 compatible
authorKyr Shatskyy <kyrylo.shatskyy@suse.com>
Thu, 14 Nov 2019 18:07:23 +0000 (19:07 +0100)
committerKyr Shatskyy <kyrylo.shatskyy@suse.com>
Thu, 14 Nov 2019 19:14:53 +0000 (20:14 +0100)
Signed-off-by: Kyr Shatskyy <kyrylo.shatskyy@suse.com>
teuthology/suite/build_matrix.py
teuthology/suite/matrix.py

index 9ea1d4b6bf2fd51f2888c188348a44d30c5bca50..8efb2a8f94ea379fa1cac3e24c299903bb553827 100644 (file)
@@ -65,11 +65,11 @@ def _get_matrix(path, subset=None):
     if subset:
         (index, outof) = subset
         mat = _build_matrix(path, mincyclicity=outof)
-        first = (mat.size() / outof) * index
+        first = (mat.size() // outof) * index
         if index == outof or index == outof - 1:
             matlimit = mat.size()
         else:
-            matlimit = (mat.size() / outof) * (index + 1)
+            matlimit = (mat.size() // outof) * (index + 1)
     else:
         first = 0
         mat = _build_matrix(path)
@@ -133,7 +133,7 @@ def _build_matrix(path, mincyclicity=0, item=''):
             mat = matrix.Product(item, submats)
             if mat and mat.cyclicity() < mincyclicity:
                 mat = matrix.Cycle(
-                    (mincyclicity + mat.cyclicity() - 1) / mat.cyclicity(), mat
+                    (mincyclicity + mat.cyclicity() - 1) // mat.cyclicity(), mat
                 )
             return mat
         else:
@@ -148,7 +148,7 @@ def _build_matrix(path, mincyclicity=0, item=''):
                     continue
                 if submat.cyclicity() < mincyclicity:
                     submat = matrix.Cycle(
-                        ((mincyclicity + submat.cyclicity() - 1) /
+                        ((mincyclicity + submat.cyclicity() - 1) //
                          submat.cyclicity()),
                         submat)
                 submats.append(submat)
index 0cc4af953935f791251ce4d5b724d3d460342c31..9c2ea1a5569654f5499b2a662e28b35e7dd28798 100644 (file)
@@ -2,6 +2,7 @@ import os
 import random
 import heapq
 from fractions import gcd
+from functools import reduce
 
 def lcm(a, b):
     return a*b // gcd(a, b)
@@ -157,8 +158,8 @@ class Product(Matrix):
         rsize = submats[0][0]
 
         cycles = gcd(rsize, lsize)
-        clen = (rsize * lsize) / cycles
-        off = (i / clen) % cycles
+        clen = (rsize * lsize) // cycles
+        off = (i // clen) % cycles
 
         def combine(r, s=frozenset()):
             if isinstance(r, frozenset):
@@ -253,14 +254,16 @@ class Sum(Matrix):
         self._pseudo_size = lcml((i.size() for i in _submats)) * len(_submats)
         self._size = sum((i.size() for i in _submats))
         self._submats = [
-            ((i, self._pseudo_size / s.size()), s) for (i, s) in \
+            ((i, self._pseudo_size // s.size()), s) for (i, s) in \
             zip(range(len(_submats)), _submats)
         ]
 
-        def sm_to_pmsl(((offset, multiple), submat)):
+        def sm_to_pmsl(offset_multiple_submat):
             """
-            submat tuple to pseudo minscanlen
+            offset_multiple_submat tuple to pseudo minscanlen
             """
+            ((offset, multiple), submat) = offset_multiple_submat
+
             return submat.minscanlen() * multiple
 
         def index_to_pindex_generator(submats):
@@ -282,13 +285,16 @@ class Sum(Matrix):
         self._minscanlen = self.pseudo_index_to_index(
             max(map(sm_to_pmsl, self._submats)))
 
-    def pi_to_sis(self, pi, (offset, multiple)):
+    def pi_to_sis(self, pi, offset_multiple):
         """
+        offset_multiple tuple of offset and multiple
+
         max(i) s.t. offset + i*multiple <= pi
         """
+        (offset, multiple) = offset_multiple
         if pi < offset:
             return -1
-        return (pi - offset) / multiple
+        return (pi - offset) // multiple
 
     def pseudo_index_to_index(self, pi):
         """