#8480 DS/BDB: Deadlock during writes (audit ticket)
Closed: fixed by antorres. Opened by fcami.

Some IPA updates are expensive in term of processing and #page hit.
The likelihood to generate a DS Berkeley DB database deadlock can be high
for some common operations.

sample error message:

25/Aug/2020:05:43:32.917438916 -0400] - ERR - NSMMReplicationPlugin -
changelog program - _cl5WriteOperationTxn - retry (49) the transaction
(csn=5f44dd2b000500070000) failed (rc=-30993 (BDB0068
DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock))
[25/Aug/2020:05:43:32.918968080 -0400] - ERR - NSMMReplicationPlugin -
changelog program - _cl5WriteOperationTxn - Failed to write entry with
csn (5f44dd2b000500070000); db error - -30993 BDB0068
DB_LOCK_DEADLOCK: Locker killed to resolve a deadlock
[25/Aug/2020:05:43:32.920165783 -0400] - ERR - NSMMReplicationPlugin -
write_changelog_and_ruv - Can't add a change for
cn=ipausers,cn=groups,cn=accounts,dc=ipadomain,dc=test (uniqid:
43d73aaa-e6b111ea-a193a55b-316987f5, optype: 8) to changelog csn
5f44dd2b000500070000
[25/Aug/2020:05:43:32.927292011 -0400] - ERR - NSMMReplicationPlugin -
process_postop - Failed to apply update (5f44dd2b000500070000) error
(1).  Aborting replication session(conn=91 op=66)

Related ticket: https://pagure.io/freeipa/issue/8479

This readily happens when using user-add in a loop and can be traced to IPA plugins doing possibly too many operations for a single ADD_user.

AI: Audit what happens in those situations and optimize plugins.


Closing as PR in duplicate ticket was merged. Additionally we didn't hit this issue during user-add tests in recent runs of performance tests.

Metadata Update from @antorres:
- Issue close_status updated to: fixed
- Issue status updated to: Closed (was: Open)

Metadata