The Symptom
After a reboot, some of the DSAs may not restart due to a timing issue related to multiple DSAs attempting to access the same Ingres catalogs at the same time.
To Diagnose The Issue
The initial indications that something is wrong will be in the DSA alarm log. A message similar to this will be seen:
The DSA Alarm log reports:
SQL error (-37000): E_LQ002E The 'commit' query has been issued outside of a DBMS session.
If reporting this problem to technical support, please attach the ingres error log ($II_SYSTEM/ingres/files/errlog.log)
If you see the above error in any of your DSA's alarm logs, after a system reboot or after an Ingres service restart, then analyze the Ingres error log which can be found in the following location:
For Win32: %II_SYSTEM%\ingres\files\errlog.log
For Unix / Linux: $II_SYSTEM/ingres/files/errlog.log
The Ingres error reports differently in both the Win32 and Unix/Linux platforms. Both versions of the error are listed below as a reference.
Windows:
E_PS0004_EXCEPTION Exception occurred in PSF
An error occurred in the following session:
<snip>
Query: select long_remark from iidb_comments, iidbconstants where
object_name='info' and object_owner=dba_name
General Protection Exception @7078bbec SP:7e3a508 BP:7e3b8b0 AX:7e3b2e0 CX:681e9d4 DX:0 BX:7bee6e0 SI:0 DI:0
<snip>
E_PS0004_EXCEPTION Exception occurred in PSF
Unix/Linux:
E_PS0004_EXCEPTION Exception occurred in PSF
An error occurred in the following session:
<snip>
Query: select NUM_ROWS from IITABLES where TABLE_NAME='dit'
Segmentation Violation (SIGSEGV) psy_view(0x158144) @ PC 158b10
SP fcc8c478 PSR fe401006 G1 66000 o0 0
E_PS0002_INTERNAL_ERROR Internal error in PSF
The q uery may either be a select from iidb_comments (example 1) or select from iitables (example 2). In both cases, it reports an exception failure in PSF immediately after startup.
The Fix
Currently there is no GA patch available for this issue, but one is currently being verified by CA. Once the patch is verified we will inform you of the download location and implementation details.
The Workaround
As this problem only occurs when two or more DSAs attempt to access the same Ingres view at the same time immediately after startup, the workaround is to start the DSAs manually, one at a time.