[haizea-commit] r628 - in branches/TP2.0/src/haizea: cli core core/scheduler core/scheduler/preparation_schedulers

haizea-commit at mailman.cs.uchicago.edu haizea-commit at mailman.cs.uchicago.edu
Wed Aug 5 04:28:10 CDT 2009


Author: borja
Date: 2009-08-05 04:28:10 -0500 (Wed, 05 Aug 2009)
New Revision: 628

Modified:
   branches/TP2.0/src/haizea/cli/rpc_commands.py
   branches/TP2.0/src/haizea/core/leases.py
   branches/TP2.0/src/haizea/core/scheduler/mapper.py
   branches/TP2.0/src/haizea/core/scheduler/preparation_schedulers/imagetransfer.py
   branches/TP2.0/src/haizea/core/scheduler/slottable.py
Log:
Minor fixes

Modified: branches/TP2.0/src/haizea/cli/rpc_commands.py
===================================================================
--- branches/TP2.0/src/haizea/cli/rpc_commands.py	2009-08-05 09:27:08 UTC (rev 627)
+++ branches/TP2.0/src/haizea/cli/rpc_commands.py	2009-08-05 09:28:10 UTC (rev 628)
@@ -122,35 +122,38 @@
                 duration = ISO.ParseTimeDelta(self.opt.duration)
     
             if self.opt.start == haizea_request_lease.START_NOW:
-                lease = Lease.create_new(
+                lease = Lease(id = None,
                               submit_time = None,
                               requested_resources = requested_resources, 
                               start = Timestamp(Timestamp.NOW),
                               duration = Duration(duration),
                               deadline = None, 
                               preemptible=preemptible,
-                              software = DiskImageSoftwareEnvironment(self.opt.vmimage, self.opt.vmimagesize)
+                              software = DiskImageSoftwareEnvironment(self.opt.vmimage, self.opt.vmimagesize),
+                              state = None
                               )
             elif self.opt.start == haizea_request_lease.START_BESTEFFORT:
-                lease = Lease.create_new(
+                lease = Lease(id = None,
                               submit_time = None,
                               requested_resources = requested_resources, 
                               start = Timestamp(Timestamp.UNSPECIFIED),
                               duration = Duration(duration),
                               deadline = None, 
                               preemptible=preemptible,
-                              software = DiskImageSoftwareEnvironment(self.opt.vmimage, self.opt.vmimagesize)
+                              software = DiskImageSoftwareEnvironment(self.opt.vmimage, self.opt.vmimagesize),
+                              state = None
                               )
             else:
                 start = self.__absolute_time(self.opt.start)
-                lease = Lease.create_new(
+                lease = Lease(id = None,
                               submit_time = None,
                               requested_resources = requested_resources, 
                               start = Timestamp(start),
                               duration = Duration(duration),
                               deadline = None, 
                               preemptible=preemptible,
-                              software = DiskImageSoftwareEnvironment(self.opt.vmimage, self.opt.vmimagesize)
+                              software = DiskImageSoftwareEnvironment(self.opt.vmimage, self.opt.vmimagesize),
+                              state = None
                               )
 
             lease_xml_str = ET.tostring(lease.to_xml())

Modified: branches/TP2.0/src/haizea/core/leases.py
===================================================================
--- branches/TP2.0/src/haizea/core/leases.py	2009-08-05 09:27:08 UTC (rev 627)
+++ branches/TP2.0/src/haizea/core/leases.py	2009-08-05 09:28:10 UTC (rev 628)
@@ -300,7 +300,8 @@
         
         """        
         lease = ET.Element("lease")
-        lease.set("id", str(self.id))
+        if self.id != None:
+            lease.set("id", str(self.id))
         lease.set("state", str(self.get_state()))
         lease.set("preemptible", str(self.preemptible))
         if self.submit_time != None:

Modified: branches/TP2.0/src/haizea/core/scheduler/mapper.py
===================================================================
--- branches/TP2.0/src/haizea/core/scheduler/mapper.py	2009-08-05 09:27:08 UTC (rev 627)
+++ branches/TP2.0/src/haizea/core/scheduler/mapper.py	2009-08-05 09:28:10 UTC (rev 628)
@@ -136,7 +136,7 @@
         
         # Generate an availability window at time "start"
         aw = self.slottable.get_availability_window(start)
-         
+
         nodes = aw.get_nodes_at(start)     
         if onlynodes != None:
             nodes = list(set(nodes) & onlynodes)

Modified: branches/TP2.0/src/haizea/core/scheduler/preparation_schedulers/imagetransfer.py
===================================================================
--- branches/TP2.0/src/haizea/core/scheduler/preparation_schedulers/imagetransfer.py	2009-08-05 09:27:08 UTC (rev 627)
+++ branches/TP2.0/src/haizea/core/scheduler/preparation_schedulers/imagetransfer.py	2009-08-05 09:28:10 UTC (rev 628)
@@ -502,8 +502,8 @@
         pnode = self.resourcepool.get_node(pnode_id)
 
         if self.reusealg == constants.REUSE_NONE:
-            for (lease, vnode) in vnodes:
-                self.resourcepool.add_diskimage(pnode_id, diskimage_id, diskimage_size, lease, vnode)
+            for (lease_id, vnode) in vnodes:
+                self.resourcepool.add_diskimage(pnode_id, diskimage_id, diskimage_size, lease_id, vnode)
         elif self.reusealg == constants.REUSE_IMAGECACHES:
             # Sometimes we might find that the image is already deployed
             # (although unused). In that case, don't add another copy to
@@ -540,8 +540,8 @@
                     
             # Besides adding the image to the cache, we need to create a separate image for
             # this specific lease
-            for (lease, vnode) in vnodes:
-                self.resourcepool.add_diskimage(pnode_id, diskimage_id, diskimage_size, lease.id, vnode)
+            for (lease_id, vnode) in vnodes:
+                self.resourcepool.add_diskimage(pnode_id, diskimage_id, diskimage_size, lease_id, vnode)
                     
         pnode.print_files()
 

Modified: branches/TP2.0/src/haizea/core/scheduler/slottable.py
===================================================================
--- branches/TP2.0/src/haizea/core/scheduler/slottable.py	2009-08-05 09:27:08 UTC (rev 627)
+++ branches/TP2.0/src/haizea/core/scheduler/slottable.py	2009-08-05 09:28:10 UTC (rev 628)
@@ -449,9 +449,8 @@
             return min(time1, time2)
         
     def get_availability_window(self, start):           
-        if self.awcache == None or start < self.awcache_time:
+        if self.awcache == None or start < self.awcache_time or (start >= self.awcache_time and not self.awcache.changepoints.has_key(start)):
             self.__get_aw_cache_miss(start)
-         
         return self.awcache
 
     def sanity_check(self):



More information about the Haizea-commit mailing list