Workstation is unexpectedly disconnected after successful connect do EM

Document ID : KB000119979
Last Modified Date : 06/11/2018
Show Technical Document Details
Issue:
Using the thick workstation client we are seeing disconnections soon after the workstation connects. The behavior also occurs when connecting on loop-back interface(localhost) so it must be issue in Enterprise Manager /Workstation. The issue occurs on Windows and Linux(RHEL 6.9).

The EM log shows
10/30/18 09:48:20.468 AM CET [INFO] [PO:main Mailman 2] [Manager.SessionBean] Workstation User "U139122" connected successfully from host "Node=Workstation_300, Address=localhost/127.0.0.1:49836, Type=socket"
10/30/18 09:48:31.036 AM CET [INFO] [PO Route Down Executor] [Manager.SessionBean] Workstation User "U139122" disconnected successfully from host "Node=Workstation_300, Address=localhost/127.0.0.1:49836, Type=socket"


Connection only works reliably through webview.
Environment:
APM 10.7
Cause:
The EM cluster had been upgarded to 10.7 SP2 but the thick workstation client had not - the version must be consistent.
Resolution:
Upgraded the thick workstation client to the same patch level as the EM.
Additional Information:
enabling DEBUG log for the workstation provided the following additional information

10/31/18 10:50:04 AM CET [WARN] [Workstation.IsengardObjectInputStream] Unexpected constructor exception java.lang.ArrayIndexOutOfBoundsException: 80479233
10/31/18 10:50:04 AM CET [WARN] [Workstation.IsengardObjectInputStream] Unexpected constructor exception java.lang.ArrayIndexOutOfBoundsException: 80479233
10/31/18 10:50:04 AM CET [WARN] [Workstation.IsengardObjectInputStream] Unexpected constructor exception java.lang.ArrayIndexOutOfBoundsException: 80479233
10/31/18 10:50:04 AM CET [DEBUG] [Workstation] Caught IO Exception while deserializing object. Stream probably corrupt. Last deserialized class: com.wily.introscope.spec.metric.Metric
java.io.IOException: Unexpected constructor exception java.lang.ArrayIndexOutOfBoundsException: 80479233
at com.wily.isengard.postofficehub.link.v1.IsengardObjectInputStream.readIsengardDataObject(IsengardObjectInputStream.java:741)
...
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
...
at com.wily.isengard.postofficehub.link.v1.IsengardObjectInputStream.readIsengardDataObject(IsengardObjectInputStream.java:717)
... 11 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 80479233
at com.wily.util.bit.BitPacking.readInt(BitPacking.java:280)
...
at com.wily.introscope.spec.server.beans.metricdata.TimeslicedResultSet.<init>(TimeslicedResultSet.java:140)
... 16 more
10/31/18 10:50:04 AM CET [WARN] [Workstation.IsengardObjectInputStream] Unexpected constructor exception java.lang.ArrayIndexOutOfBoundsException: 80479233
10/31/18 10:50:04 AM CET [DEBUG] [Workstation.IncomingMessageDeliveryTask] Unrecoverable socket exception while reading from node at: Socket Transport connected with Socket[addr=/172.16.182.94,port=5001,localport=50285]
java.io.IOException: Unexpected constructor exception java.lang.ArrayIndexOutOfBoundsException: 80479233
at com.wily.isengard.postofficehub.link.v1.IsengardObjectInputStream.readIsengardDataObject(IsengardObjectInputStream.java:741)
...
at com.wily.isengard.util.thread.AThreadedExecutable.run(AThreadedExecutable.java:192)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
...
at com.wily.isengard.postofficehub.link.v1.IsengardObjectInputStream.readIsengardDataObject(IsengardObjectInputStream.java:717)
... 11 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 80479233
at com.wily.util.bit.BitPacking.readInt(BitPacking.java:280)
...
at com.wily.introscope.spec.server.beans.metricdata.TimeslicedResultSet.<init>(TimeslicedResultSet.java:140)
... 16 more
10/31/18 10:50:04 AM CET [VERBOSE] [Workstation.PostOfficeHub] Disconnected From: Node=Server, Address=/xxx.xxx.xxx.xxx:5001, Type=socket