OPC Connection Faulted on Single OPC Connection (All Others Function)

I have a single OPC connection that always remains faulted.
I have matched all of my settings to the rest of my systems, and tried restarting multiple times and checking all of the certs.

java.lang.Exception: Error creating OPC server "REDACTED PC NAME" of type "com.inductiveautomation.OpcUaServerType"
	at com.inductiveautomation.ignition.gateway.opc.OpcConnectionManagerImpl.newOpcConnection(OpcConnectionManagerImpl.java:194)
	at com.inductiveautomation.ignition.gateway.opc.OpcConnectionManagerImpl.createAndStartConnection(OpcConnectionManagerImpl.java:613)
	at com.inductiveautomation.ignition.gateway.opc.OpcConnectionManagerImpl$OpcRecordListener.recordUpdated(OpcConnectionManagerImpl.java:602)
	at com.inductiveautomation.ignition.gateway.opc.OpcConnectionManagerImpl$OpcRecordListener.recordUpdated(OpcConnectionManagerImpl.java:577)
	at com.inductiveautomation.ignition.gateway.localdb.PersistenceInterfaceImpl.notifyRecordUpdated(PersistenceInterfaceImpl.java:179)
	at com.inductiveautomation.ignition.gateway.redundancy.RedundantPersistenceInterfaceImpl.doNotifyRecordUpdated(RedundantPersistenceInterfaceImpl.java:111)
	at com.inductiveautomation.ignition.gateway.redundancy.RedundantPersistenceInterfaceImpl$RecordUpdateListener.recordUpdated(RedundantPersistenceInterfaceImpl.java:407)
	at com.inductiveautomation.ignition.gateway.redundancy.RedundantPersistenceInterfaceImpl$RecordUpdateMessage.notify(RedundantPersistenceInterfaceImpl.java:457)
	at com.inductiveautomation.ignition.gateway.redundancy.RedundantPersistenceInterfaceImpl$RecordUpdateListener.receiveCall(RedundantPersistenceInterfaceImpl.java:390)
	at com.inductiveautomation.ignition.gateway.redundancy.QueueableMessageReceiver.receiveCall(QueueableMessageReceiver.java:47)
	at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl.dispatchMessage(RedundancyManagerImpl.java:1007)
	at com.inductiveautomation.ignition.gateway.redundancy.RedundancyManagerImpl$ExecuteTask.run(RedundancyManagerImpl.java:1075)
	at com.inductiveautomation.ignition.common.execution.impl.BasicExecutionEngine$ThrowableCatchingRunnable.run(BasicExecutionEngine.java:544)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException: context.persistenceInter…erSettings)
            ) must not be null
	at com.inductiveautomation.ignition.gateway.opcua.client.connection.OpcUaConnectionType.createNewOpcConnection(OpcUaConnectionType.kt:49)
	at com.inductiveautomation.ignition.gateway.opc.OpcConnectionManagerImpl.newOpcConnection(OpcConnectionManagerImpl.java:171)
	... 18 more

8.1.21 (b2022092908)
Azul Systems, Inc. 11.0.15

Did something get lost in the copy/paste here? Seems like it should have been telling you what can't be null here.

Nope, that is the fully copied and pasted message from the page.

Can you look in the logs and see if it's any different there?

These are just a bunch of connections that can't be seen due to configs in designer needing to be setup.

No that won't help. If you upload your wrapper.log files or an export/download of the logs I can take a look.

The file of logs is too big to share

First, do an edit/save on that connection without changing anything, it will add another error entry to the logs.

Uploading now (this is the wrapper log from the primary gateway (not the pc that it isn't seeing)


I have 3 that have been working, and this latest one is the only one to fail

Dang, the log message I was hoping would help does not log the stack trace :frowning:

Try deleting that connection and creating it again. If that doesn't work call support so they can get a gateway backup or poke at the internal DB.

I have deleted and readded the connection several times now, no luck

When I don't get the full trace from an NPE, I ask my clients to add this to ignition.conf:

wrapper.java.additional.13=-XX:-OmitStackTraceInFastThrow

.. with a suitable unique number in place of the .13.

(I use this on all of my test VMs for this reason.)

I think they might be getting it, but the stack trace isn't being logged, and possibly the web UI is mangling it. I can't really tell. As it has been copied/pasted something looks off to me.

1 Like


Not sure if it is related, but the EAM role on PC that my primary gateway cannot see is unknown (normally it would be agent)

Went ahead and fixed that (but this didn't impact our issue)

You can try restarting the Gateway :man_shrugging:

Restarting the Gateway is currently not an option (live system with no history of this being needed in the past)

You'll have to call support and open a ticket so they can get a gateway backup or look at the IDB then.