#634 Deadlock in DNA plug-in
Closed: wontfix Opened by nkinder.

The ipa-ldap-updater seems to hang during upgrade from IPA2.2->IPA3.0 which subsequently causes dirsrv not to start.

Steps to Reproduce:
1. Install IPA 2.2
2. Upgrade to IPA 3.0
3. ipa-ldap-updater should hang

A stack trace (to be attached) shows that there is a deadlock in the DNA plug-in.


stack trace
stack

Bug description: Fix for Ticket #576 -
DNA: use event queue for config update only at the start up
(commit 7c11ed17796ba8b17afa5758fcfdf1c937b54ef4)
modified the timing of updating the shared config in the
database. The write operation was no need to be in the DNA
write lock, but it was located in it, which caused the dead-
lock.

Fix description: This patch releases the dna write lock before
updating the shared config in the database.

In this section, you shouldn't need the "arg" variable. You can just pass a NULL safely to dna_update_config_event().


@@ -692,14 +695,13 @@ dna_load_plugin_config(int use_eventq)
time(&now);
slapi_eq_once(dna_update_config_event, NULL, now + 30);
} else {
- int nolock = 1; / no need to lock since dna write lock is held. /
- dna_update_config_event(0, &nolock);
+ int arg = 0; / not used. /
+ dna_update_config_event(0, &arg);
}


Aside from that, the patch looks good.

Thank you, Nathan!!
I've replaced the patch with the new one with the fix you suggested.

Reviewed by Nathan (Thank you!!)

Pushed to master: commit 712c59690a9caf120a631da1fb8c886efd422229
Pushed to 389-ds-base-1.3.0 branch: commit f865988cf5900a4fc447e94ab05338da6c0329d2
Pushed to 389-ds-base-1.2.11 branch: commit 8bd3a0db0eee06130575bded6938480cc6509dc0

Metadata Update from @nkinder:
- Issue assigned to nhosoi
- Issue set to the milestone: 1.2.11.20

389-ds-base is moving from Pagure to Github. This means that new issues and pull requests
will be accepted only in 389-ds-base's github repository.

This issue has been cloned to Github and is available here:
- https://github.com/389ds/389-ds-base/issues/634

If you want to receive further updates on the issue, please navigate to the github issue
and click on subscribe button.

Thank you for understanding. We apologize for all inconvenience.

Metadata Update from @spichugi:
- Issue close_status updated to: wontfix (was: Fixed)

Metadata