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 mr...@apache.org on 2009/07/23 21:53:31 UTC
svn commit: r797241 -
/incubator/tashi/trunk/src/tashi/clustermanager/data/sql.py
Author: mryan3
Date: Thu Jul 23 21:53:30 2009
New Revision: 797241
URL: http://svn.apache.org/viewvc?rev=797241&view=rev
Log:
Michael Wang's SQL fix from tashi-dev@i.a.o
Modified:
incubator/tashi/trunk/src/tashi/clustermanager/data/sql.py
Modified: incubator/tashi/trunk/src/tashi/clustermanager/data/sql.py
URL: http://svn.apache.org/viewvc/incubator/tashi/trunk/src/tashi/clustermanager/data/sql.py?rev=797241&r1=797240&r2=797241&view=diff
==============================================================================
--- incubator/tashi/trunk/src/tashi/clustermanager/data/sql.py (original)
+++ incubator/tashi/trunk/src/tashi/clustermanager/data/sql.py Thu Jul 23 21:53:30 2009
@@ -94,10 +94,8 @@
def makeListInstance(self, l):
i = Instance()
for e in range(0, len(self.instanceOrder)):
- if self.instanceOrder[e] == 'state':
- i.__dict__[self.instanceOrder[e]] = int(l[e])
- else:
- i.__dict__[self.instanceOrder[e]] = l[e]
+ i.__dict__[self.instanceOrder[e]] = l[e]
+ i.state = int(i.state)
i.decayed = boolean(i.decayed)
i.disks = map(lambda x: DiskConfiguration(d=x), eval(i.disks))
i.nics = map(lambda x: NetworkConfiguration(d=x), eval(i.nics))
@@ -113,16 +111,14 @@
def makeListHost(self, l):
h = Host()
for e in range(0, len(self.hostOrder)):
- if self.hostOrder[e] == 'state':
- h.__dict__[self.hostOrder[e]] = int(l[e])
- else:
- h.__dict__[self.hostOrder[e]] = l[e]
+ h.__dict__[self.hostOrder[e]] = l[e]
+ h.state = int(h.state)
return h
def registerInstance(self, instance):
self.instanceLock.acquire()
try:
- if (instance.id is not None and instance.id not in self.instances):
+ if (instance.id is not None and instance.id not in self.getInstances()):
self.instanceIdLock.acquire()
if (instance.id >= self.maxInstanceId):
self.maxInstanceId = instance.id + 1
@@ -143,6 +139,8 @@
try:
cur = self.executeStatement("SELECT * from instances WHERE id = %d" % (instanceId))
l = cur.fetchone()
+ if (not l):
+ raise TashiException(d={'errno':Errors.NoSuchInstanceId,'msg':"No such instanceId - %d" % (instanceId)})
instance = self.makeListInstance(l)
self.instanceLocks[instance.id] = self.instanceLocks.get(instance.id, threading.Lock())
instance._lock = self.instanceLocks[instance.id]