Skip to content

open62541: Crashes with large structures #200

@ralphlange

Description

@ralphlange

In a setup that I use to test and verify performance issues (#194), I tried using the open62541 client and I am consistently seeing crashes at IOC start.

Starting iocInit
############################################################################
## EPICS R7.0.10.1-DEV
## Rev. R7.0.10-6-g85347172c619c360392b
## Rev. Date Git: 2025-12-15 16:17:56 -0800
############################################################################
OPC UA Client Device Support 0.12.0-dev (v0.11.2-12-gb2fdac6-dirty); using Open62541 Client API v1.3.16
iocRun: All initialization complete
OPC UA: Autoconnecting sessions
OPC UA session 31LF00-PLC-0001-Session: connected as 'Anonymous' with security level 0 (mode=None; policy=None)
OPC UA session 31LF00-PLC-0001-Session: WARNING - this session uses *** NO SECURITY ***
item ns=3;s="CodacCFG_OPC"."CFG" record=VAC-TKM-PPC:31LF00-PLC-0001-CFG state=down status=BadServerNotConnected dataDirty=n context=31LF00-PLC-0001-Configurations@31LF00-PLC-0001-Session sampling=0(100) deadband=0 qsize=0(1) cqsize=3 discard=old timestamp=server bini=read output=n monitor=y registered=-(y) data nodes=578 leafs=1245
item ns=3;s="CodacEVNT_OPC"."EVNT" record=VAC-TKM-PPC:31LF00-PLC-0001-EVNT state=down status=BadServerNotConnected dataDirty=n context=31LF00-PLC-0001-Events@31LF00-PLC-0001-Session sampling=0(100) deadband=0 qsize=0(1) cqsize=3 discard=old timestamp=server bini=read output=n monitor=y registered=-(y) data nodes=190 leafs=561
item ns=3;s="CodacSC_OPC"."SC" record=VAC-TKM-PPC:31LF00-PLC-0001-SC state=down status=BadServerNotConnected dataDirty=n context=31LF00-PLC-0001-SimpleCommands@31LF00-PLC-0001-Session sampling=0(100) deadband=0 qsize=0(1) cqsize=3 discard=old timestamp=server bini=read output=n monitor=y registered=-(y) data nodes=990 leafs=3643
item ns=3;s="CodacSTA_OPC"."STA" record=VAC-TKM-PPC:31LF00-PLC-0001-STA state=down status=BadServerNotConnected dataDirty=n context=31LF00-PLC-0001-States@31LF00-PLC-0001-Session sampling=0(100) deadband=0 qsize=0(1) cqsize=3 discard=old timestamp=server bini=read output=n monitor=y registered=-(y) data nodes=876 leafs=11121
Item ns=3;i=134217734: element DUMMY9999 not found in _CodacCFG_PPC
Item ns=3;i=134217734: element PCO0001 not found in _CodacCFG_PPC
Item ns=3;i=134217734: element CP not found in _CodacCFG_PPC
Item ns=3;i=134217734: element CVB not found in _CodacCFG_PPC
Item ns=3;i=134217734: element PSSM not found in _CodacCFG_PPC
Item ns=3;i=134217734: element SM not found in _CodacCFG_PPC
Segmentation fault (core dumped)

The connection works without such issues using the UASDK low-level driver.

Yes, this setup uses only four structured items with up to >11.000 elements. I know.

This ticket is mostly to prevent the issue from being forgotten. Currently, we're not planning to move to open62541.

Setup:

  • OPCUA Support: v0.11.2 +
  • Platform: Ubuntu 24
  • EPICS Base: 7.0.10 + (master)
  • Client library: open62541 v1.3.16
  • Server: S7-1518

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions