You are viewing a plain text version of this content. The canonical link for it is here.
Posted to tashi-commits@incubator.apache.org by st...@apache.org on 2012/05/23 05:05:54 UTC

svn commit: r1341742 - /incubator/tashi/trunk/src/tashi/nodemanager/nodemanagerservice.py

Author: stroucki
Date: Wed May 23 05:05:53 2012
New Revision: 1341742

URL: http://svn.apache.org/viewvc?rev=1341742&view=rev
Log:
nodemanagerservice: sometimes VMs report their death during creation. Note that this can happen.

Modified:
    incubator/tashi/trunk/src/tashi/nodemanager/nodemanagerservice.py

Modified: incubator/tashi/trunk/src/tashi/nodemanager/nodemanagerservice.py
URL: http://svn.apache.org/viewvc/incubator/tashi/trunk/src/tashi/nodemanager/nodemanagerservice.py?rev=1341742&r1=1341741&r2=1341742&view=diff
==============================================================================
--- incubator/tashi/trunk/src/tashi/nodemanager/nodemanagerservice.py (original)
+++ incubator/tashi/trunk/src/tashi/nodemanager/nodemanagerservice.py Wed May 23 05:05:53 2012
@@ -247,7 +247,14 @@ class NodeManagerService(object):
 	# qemu.py calls this in the matchSystemPids thread
 	# xenpv.py: i have no real idea why it is called there
 	def vmStateChange(self, vmId, old, cur):
-		instance = self.__getInstance(vmId)
+		try:
+			instance = self.__getInstance(vmId)
+		except TashiException, e:
+			if e.errno == Errors.NoSuchVmId:
+				self.log.warning("Asked to change state for unknown VM. Has it not completed starting yet?")
+				return False
+			else:
+				raise
 
 		if (instance.state == cur):
 			# Don't do anything if state is what it should be