Vision crashes due to Oracle account logout
Posted: Mon Feb 03, 2025 1:22 am
We have recently implemented some cyber security controls on our Oracle RDB and as a result we set the IDLE_TIME to be 4 hours. However we started to get Vision crashes and we have narrowed down the cause to be this IDLE_TIME setting.
To reproduce the issue we reduced the IDLE_TIME setting to 1 minute and the Vision crashes when it attempts to re-query the RDB after Oracle has timed out the session. The following messages are output to the log viewer when the crash occurs:
We are running WinCC OA 3.18 Patch 24 on RHEL 8.8 with Oracle 19c. We have the config entry '[ui] queryRDBdirect = 1' on the workstations so they open their own connection to the RDB.
Is this a known issue or is there a way to configure the Vision to just re-connect to the RDB when it receives this "ORA-01012: not logged on" message?
Cheers
Eric
To reproduce the issue we reduced the IDLE_TIME setting to 1 minute and the Vision crashes when it attempts to re-query the RDB after Oracle has timed out the session. The following messages are output to the log viewer when the crash occurs:
Code: Select all
WCCOAui (2), 2025.02.03 10:53:40.787, CTRL, INFO, 0, , The Database Connection has been lost! , ORA-01012: not logged on
Process ID: 0
Session ID: 29 Serial number: 19889
WCCOAui (2), 2025.02.03 10:53:40.787, CTRL, INFO, 0, , Try connect to available data base orpss_sid
WCCOAui2:WCCOAui: /work/WinCCOA/ExternLibs/SQLAPI/unix/src/oraClient.cpp:613: virtual void Iora8Connection::Connect(const SAString&, const SAString&, const SAString&): Assertion `m_handles.m_pOCIEnv == NULL' failed.
Is this a known issue or is there a way to configure the Vision to just re-connect to the RDB when it receives this "ORA-01012: not logged on" message?
Cheers
Eric