http://jira.hyperic.com/browse/HHQ-2228
Steps to Reproduce:
Start the HQ agent with Uni-Directional
Attached is an email communication related to this issue:
u0006297@lpar43ml16fd_pub[/home/u0006297/HQ-4.0.0-EE-766-ppc/hyperic-hq-agent-4.
0.0-EE/bin] > sh hq-agent.sh start
-n Starting HQ Agent...
- Unable to load agent token file. Generating a new one ... Done [ Running agent setup ] Should Agent communications to HQ be unidirectional [default=no]: yes What is the HQ server IP address: ec2-67-202-54-118.compute-1.amazonaws.com
Should Agent communications to HQ always be secure [default=no]:
What is the HQ server port [default=7080]:
- Testing insecure connection ... Success What is the HQ server SSL port for unidirectional communications [default=7443]:
- Testing secure connection ... Success
What is your HQ login [default=hqadmin]: hq What is your HQ password:
What is the agent IP address [default=172.29.140.142]:
- Received tempaorary auth token from agent
- Registering agent with HQ
- HQ gave us the following agent token
1216076630288-2414197867455641714-1249390081655513431
- Informing agent of new HQ server
- Validating
- Successfully setup agent
- Agent using new transport, unidirectional=true, port=7443 u0006297@lpar43ml16fd_pub[/home/u0006297/HQ-4.0.0-EE-766-ppc/hyperic-hq-agent-4.
0.0-EE/bin] >
ERROR in Agent Log:
2008-07-14 18:05:47,397 DEBUG [ScheduleThread] [ScheduleThread]
Waiting 1000 ms until 7/14/08 6:05:48 PM
2008-07-14 18:05:47,867 DEBUG [Poller Client] [HTTPClientInvoker]
Error invoking http client invoker.
java.io.InvalidClassException: org.hyperic.hq.agent.AgentRemoteValue; local class incompatible: stream classdesc serialVersionUID = -
2828096020318367385, localclass serialVersionUID = 644682754857767836 at
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:601)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1576)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1490)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1576)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1490)
atjava.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1723)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
atjava.io.ObjectInputStream.readArray(ObjectInputStream.java:1658)
atjava.io.ObjectInputStream.readObject0(ObjectInputStream.java:1323)
atjava.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1932)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1856)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1743)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1932)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1856)
atjava.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1743)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
atjava.io.ObjectInputStream.readObject(ObjectInputStream.java:363)
at java.util.ArrayList.readObject(ArrayList.java:617)
at sun.reflect.GeneratedMethodAccessor7.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1001)
at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1833)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1743)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:363)
at org.jboss.remoting.serialization.impl.java.JavaSerializationManager.receiveObjectVersion2_2(JavaSerializationManager.java:239)
at org.jboss.remoting.serialization.impl.java.JavaSerializationManager.receiveObject(JavaSerializationManager.java:133)
at org.jboss.remoting.marshal.serializable.SerializableUnMarshaller.read(SerializableUnMarshaller.java:120)
at org.jboss.remoting.marshal.http.HTTPUnMarshaller.read(HTTPUnMarshaller. java:69)
at org.jboss.remoting.transport.http.HTTPClientInvoker.readResponse(HTTPClientInvoker.java:500)
at org.jboss.remoting.transport.http.HTTPClientInvoker.useHttpURLConnection(HTTPClientInvoker.java:306)
at org.jboss.remoting.transport.http.HTTPClientInvoker.transport(HTTPClientInvoker.java:136)
at org.jboss.remoting.MicroRemoteClientInvoker.invoke(MicroRemoteClientInvoker.java:122)
at org.jboss.remoting.Client.invoke(Client.java:1634)
at org.jboss.remoting.Client.invoke(Client.java:548)
at org.jboss.remoting.Client.invoke(Client.java:536)
at org.jboss.remoting.transporter.TransporterClient.invoke(TransporterClient.java:297)
at $Proxy1.retrieveRequests(Unknown Source)
at com.hyperic.hq.transport.PollerClientImpl$PollingRunnable.doPolling(PollerClientImpl.java:233)
at com.hyperic.hq.transport.PollerClientImpl$PollingRunnable.run(PollerClientImpl.java:191)
at java.lang.Thread.run(Thread.java:810)
2008-07-14 18:05:47,870 DEBUG [Poller Client]
[PollerClientImpl$PollingRunnable]
Exception while polling. Checking if polling should continue: org.jboss.remoting.CannotConnectException: Can not connect http client invoker.
2008-07-14 18:05:48,399 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 6:05:49 PM
2008-07-14 17:59:47,276 DEBUG [Thread-0] [CommandListener] Dispatching request for 'bizapp:getCAMServer'
2008-07-14 17:59:47,276 DEBUG [Thread-0] [CommandListener] Method 'org.hyperic.hq.agent.AgentCommand@671a671a' returned an object result
2008-07-14 17:59:47,834 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:48 PM
2008-07-14 17:59:48,837 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:49 PM
2008-07-14 17:59:49,839 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:50 PM
2008-07-14 17:59:50,841 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:51 PM
2008-07-14 17:59:51,843 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:52 PM 2008-07-14 17:59:52,844 DEBUG [ScheduleThread] [ScheduleThread]
Waiting 1000 ms until 7/14/08 5:59:3 PM
2008-07-14 17:59:53,847 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:54 PM
2008-07-14 17:59:54,847 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:55 PM
2008-07-14 17:59:55,850 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:56 PM
2008-07-14 17:59:56,852 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:57 PM
2008-07-14 17:59:57,853 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:58 PM
2008-07-14 17:59:58,856 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 5:59:59 PM
2008-07-14 17:59:59,858 DEBUG [ScheduleThread] [ScheduleThread] Waiting 1000 ms until 7/14/08 6:00:00 PM
Tom's Comment:
This looks like a case where AIX violates the serialization spec. The serial version UID is not necessary for Externalizable objects. I would recommend hardcoding the serial version UID to the value expected by AIX and see if that fixes the problem:
serialVersionUID = -
2828096020318367385
Anonymous