From 0e77fe1e921f54abe11d0370158ea0292c8d8970 Mon Sep 17 00:00:00 2001
From: Zooko O'Whielacronx <zooko@zooko.com>
Date: Sat, 12 Jul 2008 16:54:29 -0700
Subject: [PATCH] misc/simulate_load.py: fix bug in which only K shares were
 uploaded instead of N, and fix the x axis in place so that successive runs
 can be compared

---
 misc/simulate_load.py | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/misc/simulate_load.py b/misc/simulate_load.py
index 364e906d..a39fbe16 100644
--- a/misc/simulate_load.py
+++ b/misc/simulate_load.py
@@ -20,6 +20,9 @@ SERVERS = 40
 K = 3
 N = 10
 
+def make_up_a_file_size():
+    return (2 ** random.randrange(8, 31))
+
 def go(permutedpeerlist):
     servers = [ Server() for x in range(SERVERS) ]
     servers.sort(cmp=lambda x,y: cmp(x.si, y.si))
@@ -27,7 +30,7 @@ def go(permutedpeerlist):
     tick = 0
     fullservers = 0
     while True:
-        nextsharesize = (2 ** random.randrange(8, 31)) / K
+        nextsharesize = make_up_a_file_size() / K
         if permutedpeerlist:
             random.shuffle(servers)
         else:
@@ -36,7 +39,7 @@ def go(permutedpeerlist):
             servers = servers[rot:] + servers[:rot]
 
         i = 0
-        sharestoput = K
+        sharestoput = N
         while sharestoput:
             server = servers[i]
             if server.used + nextsharesize < server.max:
@@ -62,6 +65,9 @@ def div_ceil(n, d):
 
 DESIRED_COLUMNS = 70
 
+START_FILES = 137000
+STOP_FILES = 144000
+
 def test(permutedpeerlist, iters):
     # The i'th element of the filledat list is how many servers got full when the i'th file was uploaded.
     filledat = []
@@ -77,6 +83,10 @@ def test(permutedpeerlist, iters):
         startfiles += 1
     filespercolumn = div_ceil(len(filledat) - startfiles, (DESIRED_COLUMNS - 3))
 
+    # to make comparisons between runs line up:
+    startfiles = START_FILES
+    filespercolumn = div_ceil(STOP_FILES - startfiles, (DESIRED_COLUMNS - 3))
+
     # The i'th element of the compressedfilledat list is how many servers got full when the filespercolumn files starting at startfiles + i were uploaded.
     compressedfilledat = []
     idx = startfiles
-- 
2.45.2