Hi Jose,

This is the other major problem with CloudBridge and 3.0 CloudStack.  As you 
note the ID's are now actually UUIDs.

On May 30, 2012, at 8:21 AM, Jose Rozanec wrote:

Hello,

Temporarily we overcome the error handling the response before delivered to
cloudbridge server and fixing the values. When that was done, we got the
following:

Server.InternalError: Property deployvirtualmachineresponse.virtualmachine
is resolved to null JSON element on object:
{"deployvirtualmachineresponse":{"errorcode":431,"errortext":"Unable to
execute API command deployvirtualmachine due to invalid value. Object
disk_offering(uuid: 2224444f-6a56-448e-b) does not exist."}}

Looking at the cloudbridge
/usr/share/cloud/bridge/conf/ec2-service.properties file, we saw all
properties were correctly set. Looking at cloudbridge database, at the
offering_bundle table, we saw the uuid string causing the problem.
At first we thought there was a user error when inserting the value, since
those values were inserted manually. (I'm not sure what the expected
behaviour is: the cloud-setup-bridge creates a properties file and sets up
amazon-cloudstack mappings, but values are being retrieved from the
cloudbridge database and not being inserted into it.
Did we miss something here?)

The way this works is the setup script creates the ec2-service.properties file. 
 When CloudBridge launches, it checks the database and if the offering_bundle 
table is empty, it will populate it with the entries in the 
ec2-service.properties.  I'm not sure what the original design decision was, 
but I imagine it was handled this way to reduce the complexity of the 
setup-bridge script.  Any updates to the file won't change the database unless 
the table is empty.  The bigger problem, as you mentioned above is the column 
width for cloudstackoffering column being only 20 in length.



We tried to update the value with the correct string, but we got the
following warning:
*************************** 1. row ***************************
 Level: Warning
  Code: 1265
Message: Data truncated for column 'CloudStackOffering' at row 1
1 row in set (0.00 sec)

As a temporary solution we tried recreating the table with same parameters
did not work. Recreating the offering_bundle table changing the varchar(20)
to varchar(100) at CloudStackOffering column solved the issue: the uuid was
no longer truncated:
CREATE TABLE `offering_bundle` (`ID` int(11) NOT NULL
AUTO_INCREMENT,`AmazonEC2Offering` varchar(100) NOT
NULL,`CloudStackOffering` varchar(100) NOT NULL,PRIMARY KEY (`ID`),UNIQUE
KEY `one_offering` (`AmazonEC2Offering`)) ENGINE=InnoDB AUTO_INCREMENT=2
DEFAULT CHARSET=utf8;
Did anyone had a similar problem?

I posted 1.1.1 last night which contains fixes for the ID properties, but this 
issue and your run-instances issue aren't resolved in that build.  You are more 
than welcome to look at the code and contribute any changes to cloudbridge, 
https://github.com/CloudStack/CloudBridge if you would like to help make it 
better support 3.0.   Keep in mind the EC2 support being integrated in the next 
version of CloudStack 3.0 is a fork of this project with many changes 
(including the ones you've identified here) already made.

Thanks,

Jose.
\

Sam

Reply via email to