[
https://issues.apache.org/jira/browse/CLOUDSTACK-3377?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13729680#comment-13729680
]
Min Chen commented on CLOUDSTACK-3377:
--------------------------------------
I am a bit lost on this thread. Is this issue only happening on upgrade
scenario or fresh install scenario?
For fresh install scenario, since we changed JSON deserialization code in
systemvm and management server, new systemvm.iso needs to be copied to xen host
so that newly created ssvm can pick it up from new code.
For upgraded scenario, besides copying new systemvm.iso to xen host, if there
are already ssvm existing, we need to restart ssvm.
If this is only happening for upgrade case, can we close this bug and file a
different bug just for upgrade tp be clear?
> Error seen when system vms are started and due to which template download is
> not initiated : com.google.gson.JsonParseException: The JsonDeserializer
> com.cloud.agent.transport.ArrayTypeAdaptor@697537aa failed to deserialize
> json object
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: CLOUDSTACK-3377
> URL: https://issues.apache.org/jira/browse/CLOUDSTACK-3377
> Project: CloudStack
> Issue Type: Bug
> Security Level: Public(Anyone can view this level - this is the
> default.)
> Components: Management Server
> Affects Versions: 4.2.0
> Reporter: Abhinav Roy
> Assignee: Min Chen
> Priority: Blocker
> Fix For: 4.2.0
>
> Attachments: management-server.log
>
>
> Steps :
> ====================
> 1. Deploy an advanced zone setup with XenServer as host.
> Expected behaviour :
> ===================
> 1. Deployment should be successful and the system vms should be created and
> started without any issue.
> Observed behaviour :
> ==================
> Though the system vms get started and are in running state, during the start
> process the following error is thrown due to which the templates don't get
> downloaded
> 013-07-05 11:52:03,688 ERROR [agent.transport.Request]
> (AgentManager-Handler-8:null) Caught problem with
> [{"StartupSecondaryStorageCommand":{"type":"SecondaryStorage","dataCenter":"1","pod":"1","guid":"s-1-VM-NfsSecondaryStorageResource","name":"s-1-VM","version":"4.2.0-SNAPSHOT","iqn":"NoIqn","publicIpAddress":"10.102.195.11","publicNetmask":"255.255.252.0","publicMacAddress":"06:7a:80:00:00:15","privateIpAddress":"10.102.195.42","privateMacAddress":"06:2c:6e:00:00:0c","privateNetmask":"255.255.252.0","storageIpAddress":"10.102.195.42","storageNetmask":"255.255.252.0","storageMacAddress":"06:2c:6e:00:00:0c","resourceName":"NfsSecondaryStorageResource","contextMap":{},"wait":0}}]
> com.google.gson.JsonParseException: The JsonDeserializer
> com.cloud.agent.transport.ArrayTypeAdaptor@697537aa failed to deserialize
> json object
> [{"StartupSecondaryStorageCommand":{"type":"SecondaryStorage","dataCenter":"1","pod":"1","guid":"s-1-VM-NfsSecondaryStorageResource","name":"s-1-VM","version":"4.2.0-SNAPSHOT","iqn":"NoIqn","publicIpAddress":"10.102.195.11","publicNetmask":"255.255.252.0","publicMacAddress":"06:7a:80:00:00:15","privateIpAddress":"10.102.195.42","privateMacAddress":"06:2c:6e:00:00:0c","privateNetmask":"255.255.252.0","storageIpAddress":"10.102.195.42","storageNetmask":"255.255.252.0","storageMacAddress":"06:2c:6e:00:00:0c","resourceName":"NfsSecondaryStorageResource","contextMap":{},"wait":0}}]
> given the type class [Lcom.cloud.agent.api.Command;
> at
> com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:64)
> at
> com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:92)
> at
> com.google.gson.JsonDeserializationVisitor.visitUsingCustomHandler(JsonDeserializationVisitor.java:80)
> at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:101)
> at
> com.google.gson.JsonDeserializationContextDefault.fromJsonArray(JsonDeserializationContextDefault.java:67)
> at
> com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:52)
> at com.google.gson.Gson.fromJson(Gson.java:551)
> at com.google.gson.Gson.fromJson(Gson.java:498)
> at com.cloud.agent.transport.Request.getCommands(Request.java:235)
> at
> com.cloud.agent.manager.AgentManagerImpl$AgentHandler.processRequest(AgentManagerImpl.java:1196)
> at
> com.cloud.agent.manager.AgentManagerImpl$AgentHandler.doTask(AgentManagerImpl.java:1349)
> at
> com.cloud.agent.manager.ClusteredAgentManagerImpl$ClusteredAgentHandler.doTask(ClusteredAgentManagerImpl.java:659)
> at com.cloud.utils.nio.Task.run(Task.java:83)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:679)
> Caused by: com.cloud.utils.exception.CloudRuntimeException: can't find
> StartupSecondaryStorageCommand
> at
> com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:77)
> at
> com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:37)
> at
> com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:51)
> ... 15 more
> 2013-07-05 11:52:03,692 WARN [utils.nio.Task] (AgentManager-Handler-8:null)
> Caught the following exception but pushing on
> com.google.gson.JsonParseException: The JsonDeserializer
> com.cloud.agent.transport.ArrayTypeAdaptor@697537aa failed to deserialize
> json object
> [{"StartupSecondaryStorageCommand":{"type":"SecondaryStorage","dataCenter":"1","pod":"1","guid":"s-1-VM-NfsSecondaryStorageResource","name":"s-1-VM","version":"4.2.0-SNAPSHOT","iqn":"NoIqn","publicIpAddress":"10.102.195.11","publicNetmask":"255.255.252.0","publicMacAddress":"06:7a:80:00:00:15","privateIpAddress":"10.102.195.42","privateMacAddress":"06:2c:6e:00:00:0c","privateNetmask":"255.255.252.0","storageIpAddress":"10.102.195.42","storageNetmask":"255.255.252.0","storageMacAddress":"06:2c:6e:00:00:0c","resourceName":"NfsSecondaryStorageResource","contextMap":{},"wait":0}}]
> given the type class [Lcom.cloud.agent.api.Command;
> at
> com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:64)
> at
> com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:92)
> at
> com.google.gson.JsonDeserializationVisitor.visitUsingCustomHandler(JsonDeserializationVisitor.java:80)
> at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:101)
> at
> com.google.gson.JsonDeserializationContextDefault.fromJsonArray(JsonDeserializationContextDefault.java:67)
> at
> com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:52)
> at com.google.gson.Gson.fromJson(Gson.java:551)
> at com.google.gson.Gson.fromJson(Gson.java:498)
> at com.cloud.agent.transport.Request.getCommands(Request.java:235)
> at
> com.cloud.agent.manager.AgentManagerImpl$AgentHandler.processRequest(AgentManagerImpl.java:1196)
> at
> com.cloud.agent.manager.AgentManagerImpl$AgentHandler.doTask(AgentManagerImpl.java:1349)
> at
> com.cloud.agent.manager.ClusteredAgentManagerImpl$ClusteredAgentHandler.doTask(ClusteredAgentManagerImpl.java:659)
> at com.cloud.utils.nio.Task.run(Task.java:83)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:679)
> Caused by: com.cloud.utils.exception.CloudRuntimeException: can't find
> StartupSecondaryStorageCommand
> at
> com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:77)
> at
> com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:37)
> at
> com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:51)
> ... 15 more
> 2013-07-05 11:52:04,640 ERROR [agent.transport.Request]
> (AgentManager-Handler-10:null) Caught problem with
> [{"StartupProxyCommand":{"proxyPort":80,"proxyVmId":2,"type":"ConsoleProxy","dataCenter":"1","pod":"1","guid":"Proxy.2-ConsoleProxyResource","name":"v-2-VM","version":"4.2.0-SNAPSHOT","iqn":"NoIqn","publicIpAddress":"10.102.195.12","publicNetmask":"255.255.252.0","publicMacAddress":"06:28:92:00:00:16","privateIpAddress":"10.102.195.47","privateMacAddress":"06:be:38:00:00:11","privateNetmask":"255.255.252.0","storageIpAddress":"10.102.195.47","storageNetmask":"255.255.252.0","storageMacAddress":"06:be:38:00:00:11","resourceName":"ConsoleProxyResource","contextMap":{},"wait":0}}]
> com.google.gson.JsonParseException: The JsonDeserializer
> com.cloud.agent.transport.ArrayTypeAdaptor@697537aa failed to deserialize
> json object
> [{"StartupProxyCommand":{"proxyPort":80,"proxyVmId":2,"type":"ConsoleProxy","dataCenter":"1","pod":"1","guid":"Proxy.2-ConsoleProxyResource","name":"v-2-VM","version":"4.2.0-SNAPSHOT","iqn":"NoIqn","publicIpAddress":"10.102.195.12","publicNetmask":"255.255.252.0","publicMacAddress":"06:28:92:00:00:16","privateIpAddress":"10.102.195.47","privateMacAddress":"06:be:38:00:00:11","privateNetmask":"255.255.252.0","storageIpAddress":"10.102.195.47","storageNetmask":"255.255.252.0","storageMacAddress":"06:be:38:00:00:11","resourceName":"ConsoleProxyResource","contextMap":{},"wait":0}}]
> given the type class [Lcom.cloud.agent.api.Command;
> at
> com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:64)
> at
> com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:92)
> at
> com.google.gson.JsonDeserializationVisitor.visitUsingCustomHandler(JsonDeserializationVisitor.java:80)
> at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:101)
> at
> com.google.gson.JsonDeserializationContextDefault.fromJsonArray(JsonDeserializationContextDefault.java:67)
> at
> com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:52)
> at com.google.gson.Gson.fromJson(Gson.java:551)
> at com.google.gson.Gson.fromJson(Gson.java:498)
> at com.cloud.agent.transport.Request.getCommands(Request.java:235)
> at
> com.cloud.agent.manager.AgentManagerImpl$AgentHandler.processRequest(AgentManagerImpl.java:1196)
> at
> com.cloud.agent.manager.AgentManagerImpl$AgentHandler.doTask(AgentManagerImpl.java:1349)
> at
> com.cloud.agent.manager.ClusteredAgentManagerImpl$ClusteredAgentHandler.doTask(ClusteredAgentManagerImpl.java:659)
> at com.cloud.utils.nio.Task.run(Task.java:83)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:679)
> Caused by: com.cloud.utils.exception.CloudRuntimeException: can't find
> StartupProxyCommand
> at
> com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:77)
> at
> com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:37)
> at
> com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:51)
> ... 15 more
> 2013-07-05 11:52:04,647 WARN [utils.nio.Task] (AgentManager-Handler-10:null)
> Caught the following exception but pushing on
> com.google.gson.JsonParseException: The JsonDeserializer
> com.cloud.agent.transport.ArrayTypeAdaptor@697537aa failed to deserialize
> json object
> [{"StartupProxyCommand":{"proxyPort":80,"proxyVmId":2,"type":"ConsoleProxy","dataCenter":"1","pod":"1","guid":"Proxy.2-ConsoleProxyResource","name":"v-2-VM","version":"4.2.0-SNAPSHOT","iqn":"NoIqn","publicIpAddress":"10.102.195.12","publicNetmask":"255.255.252.0","publicMacAddress":"06:28:92:00:00:16","privateIpAddress":"10.102.195.47","privateMacAddress":"06:be:38:00:00:11","privateNetmask":"255.255.252.0","storageIpAddress":"10.102.195.47","storageNetmask":"255.255.252.0","storageMacAddress":"06:be:38:00:00:11","resourceName":"ConsoleProxyResource","contextMap":{},"wait":0}}]
> given the type class [Lcom.cloud.agent.api.Command;
> at
> com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:64)
> at
> com.google.gson.JsonDeserializationVisitor.invokeCustomDeserializer(JsonDeserializationVisitor.java:92)
> at
> com.google.gson.JsonDeserializationVisitor.visitUsingCustomHandler(JsonDeserializationVisitor.java:80)
> at com.google.gson.ObjectNavigator.accept(ObjectNavigator.java:101)
> at
> com.google.gson.JsonDeserializationContextDefault.fromJsonArray(JsonDeserializationContextDefault.java:67)
> at
> com.google.gson.JsonDeserializationContextDefault.deserialize(JsonDeserializationContextDefault.java:52)
> at com.google.gson.Gson.fromJson(Gson.java:551)
> at com.google.gson.Gson.fromJson(Gson.java:498)
> at com.cloud.agent.transport.Request.getCommands(Request.java:235)
> at
> com.cloud.agent.manager.AgentManagerImpl$AgentHandler.processRequest(AgentManagerImpl.java:1196)
> at
> com.cloud.agent.manager.AgentManagerImpl$AgentHandler.doTask(AgentManagerImpl.java:1349)
> at
> com.cloud.agent.manager.ClusteredAgentManagerImpl$ClusteredAgentHandler.doTask(ClusteredAgentManagerImpl.java:659)
> at com.cloud.utils.nio.Task.run(Task.java:83)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
> at java.lang.Thread.run(Thread.java:679)
> Caused by: com.cloud.utils.exception.CloudRuntimeException: can't find
> StartupProxyCommand
> at
> com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:77)
> at
> com.cloud.agent.transport.ArrayTypeAdaptor.deserialize(ArrayTypeAdaptor.java:37)
> at
> com.google.gson.JsonDeserializerExceptionWrapper.deserialize(JsonDeserializerExceptionWrapper.java:51)
> ... 15 more
> Workaround :
> ==============================
> 1. I tried removing the tags from the host and then restarting the MS, but it
> didn't work and i still saw those errors.
> 2. Reboot the XenServer host, this works.
> NOTE : This is a RPM setup not Dev setup
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira