The _client-session table only stores data if the following conditions are met:
- The "Record Authenticated Client Sessions" Database Option is enabled for the database.
- A client session is authenticated using client-principal object along with the SET-CLIENT( ) or SET-DB-CLIENT( ) ABL code to assert the identity of the authenticated user, the user login is correctly registered in the _client-session table
The target (long-term) archive database itself is usually also enabled to record client session information however the
data in this table from the source audit records must be copied to the audit archive database and is therefore part of the archive process. The record content will not be deleted as part of the same "auditarchive" process as this client session information could be used for other purposes than auditing. In other words, this table is not used only for auditing purposes, which is why there may be activity on this table when auditing is disabled/not enabled or even client login session information that have nothing to do with associated record content in the audit-trail
.
To enable the Record Authenticated Client Sessions that access the audit archive database:
- Connect a client to the audit archive database.
- Go to: Data Admin -> Database Options
- Select: Record Authenticated Client Sessions.
To purge
_Client-Session records:
First consider why the database is enabled to record them in the first place (
"Record Authenticated Client Sessions" )
Upgrade to OpenEdge 11.4 where an exclusive schema-lock issue was resolved ( Cannot purge data out of under _client-session table online. )
/* simple code: transaction scope, if-available & error checking */
FOR EACH _client-session.
DELETE _client-session.
END.