[IGN-5303]Error retrieving diagnostics when opening a tag

Has anyone encountered a recurring error popup when opening a tag in the Designer’s tag browser?

The error message simply states “Error retrieving diagnostics”.
Here is what is listed under details:
GatewayException: Unable to read response from Gateway.
caused by org.xml.sax.SAXException: java.lang.ClassNotFoundException: com.inductiveautomation.ignition.gateway.history.PackedHistoricalQualifiedValue
java.lang.ClassNotFoundException: com.inductiveautomation.ignition.gateway.history.PackedHistoricalQualifiedValue

caused by ClassNotFoundException: com.inductiveautomation.ignition.gateway.history.PackedHistoricalQualifiedValue

Ignition v8.1.12 (b2021111810)
Java: Azul Systems, Inc. 11.0.11

Are you retrieving tags from a different version of Ignition via a remote tag provider? Did you recently upgrade any gateway(s) involved?

We did recently upgrade the gateway to 8.1.12. I did not upgrade my Designer. Would that cause this issue?

Edit: The tag provider is on the gateway. Nothing special there.

This just looks like a bug on our part. Can you open a ticket with support and probably provide your tag export or gateway backup?

1 Like

Will do!

Hello,

Please do keep us informed, having the same problem exactly.

On our case, this is happening on tags with “History Enabled” only.

Thank you,
Bruno Nunes

Certainly. I submitted all of this to IA Support and have worked with them for weeks. We haven’t arrived at a solution yet, so it may well just be a bug IA devs have to squash.

1 Like

This is definitely a bug we need to fix, if support hasn’t made that clear I’m sorry.

I’ll try to pull it into this upcoming sprint.

2 Likes

Sounds good. Thank you for the update!

Sorry to revive this again, but just an update. On our case, it seems it was just a configuration mistake. We had defined history enabled for a couple of test tags, without setting up the storage provider. Once we defined it, the error stopped popping up.

image

Hi, is it resolve?

Sorry, it doesn’t look like it has been fixed yet. I’ll bump the priority a little.

I’m reading on our ticket that if you restart the tag you should be able to access the diagnostics afterwards.

I’m running Ignition 8.1.16 and just ran into the same problem when I started enabling history on tags.
the error pops up as soon as I try to save a tag configuration for which I just enabled history and every time I open the tag configuration after that, until I disable history.
Initially I had missed specifying the history provider but correcting that does not appear to resolve the issue.

The icon beside the tag indicating history is enabled does not appear until I restart the designer. Also, it does not disappear when I disable history until I restart designer.

Is there a known fix or work around?

com.inductiveautomation.ignition.client.gateway_interface.GatewayException: Unable to read response from Gateway.
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.newGatewayException(GatewayInterface.java:351)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.getResponse(GatewayInterface.java:487)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.sendMessage(GatewayInterface.java:283)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.sendMessage(GatewayInterface.java:278)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.invoke(GatewayInterface.java:945)
	at com.inductiveautomation.ignition.client.tags.impl.GatewayTagInterface$GatewayProviderProxy.getDiagnosticsAsync(GatewayTagInterface.java:548)
	at com.inductiveautomation.ignition.client.tags.impl.ClientTagManagerImpl.getDiagnosticsAsync(ClientTagManagerImpl.java:375)
	at com.inductiveautomation.ignition.designer.tags.editing.TagDiagnosticsPanel.refreshDisplay(TagDiagnosticsPanel.java:102)
	at com.inductiveautomation.ignition.designer.tags.editing.TagDiagnosticsPanel.setCurrentPath(TagDiagnosticsPanel.java:96)
	at com.inductiveautomation.ignition.designer.tags.editing.dialog.TagEditorDialog.selectedModelsChanged(TagEditorDialog.java:858)
	at com.inductiveautomation.ignition.designer.tags.editing.dialog.TagEditorDialog$NonComplexConfigurationTracker.finishLoading(TagEditorDialog.java:1351)
	at java.base/java.util.concurrent.CompletableFuture.uniWhenComplete(Unknown Source)
	at java.base/java.util.concurrent.CompletableFuture.uniWhenCompleteStage(Unknown Source)
	at java.base/java.util.concurrent.CompletableFuture.whenComplete(Unknown Source)
	at com.inductiveautomation.ignition.designer.tags.editing.dialog.TagEditorDialog$NonComplexConfigurationTracker.load(TagEditorDialog.java:1338)
	at com.inductiveautomation.ignition.designer.tags.editing.dialog.TagEditorDialog.editTags(TagEditorDialog.java:763)
	at com.inductiveautomation.ignition.designer.tags.editing.dialog.TagEditorDialog.refreshPaths(TagEditorDialog.java:599)
	at com.inductiveautomation.ignition.designer.tags.editing.dialog.TagEditorDialog.doApplyAction(TagEditorDialog.java:442)
	at com.inductiveautomation.ignition.designer.tags.editing.dialog.TagEditorDialog.applyButtonClicked(TagEditorDialog.java:427)
	at com.inductiveautomation.ignition.designer.tags.editing.dialog.TagEditorDialog$3.actionPerformed(TagEditorDialog.java:213)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
	at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.Component.processEvent(Unknown Source)
	at java.desktop/java.awt.Container.processEvent(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
	at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Caused by: org.xml.sax.SAXException: java.lang.ClassNotFoundException: com.inductiveautomation.ignition.gateway.history.PackedHistoricalQualifiedValue
java.lang.ClassNotFoundException: com.inductiveautomation.ignition.gateway.history.PackedHistoricalQualifiedValue
	at com.inductiveautomation.ignition.client.gateway_interface.ResponseParser.endElement(ResponseParser.java:157)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
	at java.xml/com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
	at com.inductiveautomation.ignition.client.gateway_interface.GatewayInterface.getResponse(GatewayInterface.java:485)
	... 53 more
Caused by: java.lang.ClassNotFoundException: com.inductiveautomation.ignition.gateway.history.PackedHistoricalQualifiedValue
	at java.base/java.net.URLClassLoader.findClass(Unknown Source)
	at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
	at java.base/java.lang.ClassLoader.loadClass(Unknown Source)
	at java.base/java.lang.Class.forName0(Native Method)
	at java.base/java.lang.Class.forName(Unknown Source)
	at java.base/java.io.ObjectInputStream.resolveClass(Unknown Source)
	at java.base/java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
	at java.base/java.io.ObjectInputStream.readClassDesc(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
	at java.base/java.util.HashMap.readObject(Unknown Source)
	at java.base/jdk.internal.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at java.base/java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
	at java.base/java.util.HashMap.readObject(Unknown Source)
	at java.base/jdk.internal.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at java.base/java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
	at java.base/java.util.TreeMap.buildFromSorted(Unknown Source)
	at java.base/java.util.TreeMap.buildFromSorted(Unknown Source)
	at java.base/java.util.TreeMap.buildFromSorted(Unknown Source)
	at java.base/java.util.TreeMap.readObject(Unknown Source)
	at java.base/jdk.internal.reflect.GeneratedMethodAccessor38.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at java.base/java.io.ObjectStreamClass.invokeReadObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.defaultReadFields(Unknown Source)
	at java.base/java.io.ObjectInputStream.readSerialData(Unknown Source)
	at java.base/java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject0(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
	at java.base/java.io.ObjectInputStream.readObject(Unknown Source)
	at com.inductiveautomation.ignition.common.Base64.decodeToObjectFragile(Base64.java:985)
	at com.inductiveautomation.ignition.common.Base64.decodeToObjectFragile(Base64.java:959)
	at com.inductiveautomation.ignition.client.gateway_interface.ResponseParser.endElement(ResponseParser.java:155)
	... 64 more

Ignition v8.1.16 (b2022040511)
Java: Azul Systems, Inc. 11.0.14.1

This behavior has been fixed and will be included in the 8.1.17 release.