Missing data and perceived inconsistencies in auditing data upon database restarts

Details

Detail name Value
Changelog Number 5051
Type Bug
Status Open
Affected Versions EXASOL 6.0.0, EXASolution 5.0.0

Synopsis
Upon database restarts it is possible that some query data in auditing is lost. In particular it is possible to have queries in EXA_DBA_AUDIT_SQL having session id's not matching any session in EXA_DBA_AUDIT_SESSIONS.

Details
The auditing data is written and committed by the SqlLog server process. Upon a uncoordinated database restart (crash) any uncommitted data is lost, including auditing data. In particular, the following scenario is possible:

  • Just before the database restart new sessions are created and some statements are executed; this data is lost and consequently sessions do later not show up in EXA_DBA_AUDIT_SESSIONS and queries do not show up in EXA_DBA_AUDIT_SQL
  • In some cases, a session may be able to reconnect after the restart; this does not count as a new login and the session data does not show up in EXA_DBA_AUDIT_SESSIONS (old data was lost), while the sql entries that run after restart are shown in EXA_DBA_AUDIT_SQL. This leads to queries in EXA_DBA_AUDIT_SQL whose session_id field doesn't match any entry in EXA_DBA_AUDIT_SESSIONS.