I noticed that delete of external access log publisher cause "Unwilling to perform" error, in case this publisher is disabled and only when it is disabled.
I configured new publisher with following command:
./dsconfig -h pyforge.example.com -p 4444 -D "cn=myself" -w password -X create-log-publisher --publisher-name "JdbcLDAPExample" --type external-access --set enabled:false --set config-file:jdb_config.json
I disabled the publihser with following command:
./dsconfig -h pyforge.example.com -p 4444 -D "cn=myself" -w password -X set-log-publisher-prop --publisher-name "JdbcLDAPExample" --set enabled:false -n
and tried to delete it with following command:
./dsconfig -h pyforge.example.com -p 4444 -D "cn=myself" -w password -X delete-log-publisher --publisher-name "JdbcLDAPExample" -n
The Log Publisher could not be deleted because of the following reason:
* Unwilling to Perform: Entry dn:
cn=Directory Manager,cn=Root DNs,cn=config
modifiersName: cn=Directory Manager,cn=Root
cannot be removed from the Directory Server configuration because one of
the delete listeners registered with the parent entry
cn=Loggers,cn=config rejected this change with the message:
Note: The message is not trimered by me and really ends with "with the message:".
Correctly removed log publisher. It should not be dependent on fact the publisher is enabled or disabled.
The issue with delete of log publisher doesn't appear if the publisher is enabled.
I tried this above scenario with JDBC, JMS, Splunk configured external log publishers, so it looks like issue of external publishers.