cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Wido den Hollander <w...@widodh.nl>
Subject 4.2 KVM agent can't communicate with 4.1 management server
Date Mon, 22 Jul 2013 13:52:40 GMT
Hi,

While reviewing 12775 I upgraded my Agents from 4.1 to 4.2, but kept my 
management server at 4.1

When the Agent starts it sends a StartupRoutingCommand to the management 
server, but this has changed it seems:

In 4.1 the Agent sends this JSON:

Sending Startup: Seq 4-0:  { Cmd , MgmtId: -1, via: 4, Ver: v1, Flags: 
1, [{"StartupRoutingCommand":{

In 4.2 however the JSON data starts with:

Sending Startup: Seq 1-6:  { Cmd , MgmtId: -1, via: 1, Ver: v1, Flags: 
1, [{"com.cloud.agent.api.StartupRoutingCommand":{

So the Agent sends the full name of the class and this confuses the 
Management server, it throws an Exception:

Caused by: com.cloud.utils.exception.CloudRuntimeException: can't find 
com.cloud.agent.api.com.cloud.agent.api.StartupRoutingCommand
	at 
com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:79)
	at 
com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:37)
	at 
com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:51)
	... 15 more

So it's searching for 
"com.cloud.agent.api.com.cloud.agent.api.StartupRoutingCommand" which 
obviously fails.

I'm not sure how to fix this, since StartupRoutingCommand simply calls 
"RouterPrivateIpStrategy.class.getCanonicalName()"

I created this issue for it: 
https://issues.apache.org/jira/browse/CLOUDSTACK-3714

Any suggestions on how to fix this?

Wido


Mime
View raw message