The DNA plugin makes its updates directly to the entry in be_txn_pre_op phase. Since this is directly modifying the entry, and not calling op_shared_modify/modify_internal, the last mod attrs do not get updated.
This is not just present in be_txn_pre_op, it also occurs in dna_pre_op_add() and dna_pre_op_modify.
There is a change in behavior of the nsslapd-plugin-track-binddn feature. Previously, if you just added or created a entry, without plugin interference, the internalModifiersname would be the original bind dn. This has been changed to always show the actual plugin that did the add/mod - not the bind dn. So if a plugin did not interfere, then the internalCreatorsname/internalModifersname would be the "database" plugin:
cn=ldbm database,cn=plugins,cn=config
Sending fix out for review...
git merge ticket302 Updating dbc0a95..2bef7e7 Fast-forward ldap/servers/plugins/dna/dna.c | 4 ++ ldap/servers/slapd/add.c | 56 ++++++++++++++++++++++++++++++++--- ldap/servers/slapd/opshared.c | 8 ++++- ldap/servers/slapd/proto-slap.h | 1 - ldap/servers/slapd/slapi-private.h | 6 ++++ 5 files changed, 67 insertions(+), 8 deletions(-)
[mareynol@localhost ds]$ git push origin master Counting objects: 23, done. Delta compression using up to 4 threads. Compressing objects: 100% (12/12), done. Writing objects: 100% (12/12), 2.20 KiB, done. Total 12 (delta 10), reused 0 (delta 0) To ssh://git.fedorahosted.org/git/389/ds.git dbc0a95..2bef7e7 master -> master
plugin_get_dn will allocate memory, so you have to free it
For future reference - you don't have to revert the whole commit - just commit another patch that addresses the issue, and reference that commit in the ticket
revision 0001-Ticket-495-internalModifiersname-not-updated-by-DNA-.patch
ack
git merge ticket495 Updating 680cd14..f33e73f Fast-forward ldap/servers/plugins/dna/dna.c | 4 ++ ldap/servers/slapd/add.c | 63 +++++++++++++++++++++++++++++++---- ldap/servers/slapd/configdse.c | 1 + ldap/servers/slapd/opshared.c | 15 ++++++--- ldap/servers/slapd/proto-slap.h | 1 - ldap/servers/slapd/slapi-private.h | 6 +++ 6 files changed, 76 insertions(+), 14 deletions(-)
[mareynol@localhost ds]$ git push origin master Counting objects: 25, done. Delta compression using up to 4 threads. Compressing objects: 100% (13/13), done. Writing objects: 100% (13/13), 2.38 KiB, done. Total 13 (delta 11), reused 0 (delta 0) To ssh://git.fedorahosted.org/git/389/ds.git 680cd14..f33e73f master -> master
Although this was checked into 1.2.11, 1.2.11 was missing a change that is causing problems with the values for internalModifiersname and internalCreatorsname.
fix for missing plugin in pblock 0001-Ticket-495-389-ds-base-1.2.11-pblock-missing-plugin-.patch
git merge internalMod Updating 3b177a7..d47fd4b Fast-forward ldap/servers/slapd/pblock.c | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-)
[mareynol@localhost ds]$ git push origin 389-ds-base-1.2.11 Counting objects: 11, done. Delta compression using up to 4 threads. Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 863 bytes, done. Total 6 (delta 4), reused 0 (delta 0) To ssh://git.fedorahosted.org/git/389/ds.git 3b177a7..d47fd4b 389-ds-base-1.2.11 -> 389-ds-base-1.2.11
Linked to Bugzilla bug: https://bugzilla.redhat.com/show_bug.cgi?id=889083 (''Red Hat Enterprise Linux 6'')
Metadata Update from @rmeggins: - Issue assigned to mreynolds - Issue set to the milestone: 1.2.11.17
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/495
If you want to receive further updates on the issue, please navigate to the github issue and click on subscribe button.
subscribe
Thank you for understanding. We apologize for all inconvenience.
Metadata Update from @spichugi: - Issue close_status updated to: wontfix (was: Fixed)
Login to comment on this ticket.