Salesforce

Duplicate records in _client-session table for both main database and audit archive database

« Go Back

Information

 
TitleDuplicate records in _client-session table for both main database and audit archive database
URL Name000049311
Article Number000168497
EnvironmentProduct: OpenEdge
Version: 11.x
OS: All supported platforms
Other: Auditing
Question/Problem Description
Duplicate records are showing in the _client-session table for both the main database and the audit archive database.
Records appear to be the same except for the db-guids are different for the matching records.
Application is attaching to both the main database as well as the audit archive database, and has "Record Authenticated Client Sessions" enabled for both databases.
 
 
Steps to Reproduce
Clarifying Information
Client-principal is being used in the application associated with the creation of these records.
Error Message
Defect Number
Enhancement Number
Cause
Application is attaching to both the main database as well as the audit archive database, with the  "Record Authenticated Client Sessions" enabled for both databases.
 
When we seal the client-principal, we will create a _client-session record.  This is done for every connected database that has the "Record Authenticated Client Sessions" database option enabled.  The only difference will be the db-guid, since we get that from the database.
 
When both databases have the "Record Authenticated Client Sessions" Database Option enabled, then the 'same' record will appear in both databases with the corresponding db-guid.  

When the auditload utility is run to update the audit records, it will skip any duplicate _client-session records and the one originally in the archive database will remain, hence the db-guid difference.  
 
You can verify this by looking at the auditload output.  It will show a difference in the number of records in the .abd file and the number of records loaded for the _client-session table.
 
If a _client-session record already exists on the target database with the same _client-session-uuid value (which we get from the Client-principal), then the auditload will skip that record and the record that was already in the target database will remain, where that record will most likely have the target db's _db-guid value (if it wasn't loaded from another database).
 
When you seal the client-principal, if both database are connected, and both have the Database Option to record client sessions, both databases will have the _client-session record (with the same _client-session-uuid value), and they will only differ in the _db-guid value.
Resolution
Disable "Record Authenticated Client Sessions" for audit archive database.

To disable the Record Authenticated Client Sessions on the audit archive database:
  1. Connect a client to the audit archive database.
  2. Go to Data Admin -> Database Options
  3. Deselect Record Authenticated Client Sessions.
 
Workaround
Notes
Keyword Phrase
Last Modified Date11/20/2020 7:28 AM

Powered by