In the event of a call to log__error_emergency we should probably shutdown DS. To get here, we are in in a terrible position, generally because we can't log, clocks aren't work, or other.
Right now, calls to vslapd_log_error in the case of failing, after the call to log__error_emergency, will cause a system shutdown.
I want to extend this so any call to log__error_emergency will trigger this.
Per triage, setting the milestone to 1.3.6.
All our calls to this function are in log.c:
{{{ ldap/servers/slapd/log.c:117:static void log__error_emergency(const char errstr, int reopen, int locked); ldap/servers/slapd/log.c:621: log__error_emergency(buffer, 0, 0); ldap/servers/slapd/log.c:2335: log__error_emergency("CRITICAL: vslapd_log_error, Unable to format message", 1 , locked); ldap/servers/slapd/log.c:2344: log__error_emergency(buffer, 1 ,locked); ldap/servers/slapd/log.c:2350: log__error_emergency(buffer, 1 ,locked); ldap/servers/slapd/log.c:2359: log__error_emergency(buffer, 1 ,locked); ldap/servers/slapd/log.c:2416: log__error_emergency(buffer, 1, locked); ldap/servers/slapd/log.c:2525: log__error_emergency("CRITICAL: vslapd_log_access, Unable to format message", 1 ,0); ldap/servers/slapd/log.c:2535: log__error_emergency(buffer, 1 ,0); ldap/servers/slapd/log.c:2542: log__error_emergency(buffer, 1 ,0); ldap/servers/slapd/log.c:2551: log__error_emergency(buffer, 1 ,0); ldap/servers/slapd/log.c:2561: log__error_emergency("Insufficent buffer capacity to fit timestamp and message!", 1 ,0); ldap/servers/slapd/log.c:3600: log__error_emergency(buffer, 0, 1); ldap/servers/slapd/log.c:3854: log__error_emergency(buffer, 0, locked); ldap/servers/slapd/log.c:4467:log__error_emergency(const char errstr, int reopen, int locked) ldap/servers/slapd/log.c:4516: log__error_emergency(buffer, 0, locked); ldap/servers/slapd/log.c:4564: log__error_emergency(buffer, 1, 1); ldap/servers/slapd/log.c:4583: log__error_emergency(buffer, 1, locked); ldap/servers/slapd/log.c:4602: log__error_emergency(buffer, 1, locked); ldap/servers/slapd/log.c:4626: log__error_emergency(buffer, 1, locked); }}}
Now, some of them are real emergencies, some are just "ohh I couldn't find the errors file when I went to rotate it".
We don't really hit these cases a lot, so maybe it's not a good idea to trigger shutdown when they arise? Most of them seem recoverable.
Metadata Update from @firstyear: - Issue assigned to firstyear - Issue set to the milestone: 1.3.6 backlog
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/1809
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: Invalid)
Login to comment on this ticket.