Ticket was cloned from Red Hat Bugzilla (product Fedora): Bug 1456560
Created attachment 1283280 crash stack trace Description of problem: A disk space was exhausted. After cleanup, a restart of 389-ds cannot complete due to a crash in adjust_idl_switch(). # cat /var/lib/dirsrv/slapd-XS-IPA-COOL/db/DBVERSION bdb/5.3/libback-ldbm/newidl/rdn-format-3/dn-4514-1 Version-Release number of selected component (if applicable): rpm -q 389-ds-base libdb 389-ds-base-1.3.5.17-3.fc25.x86_64 libdb-5.3.28-14.fc24.x86_64 Attaching a stack trace.
Metadata Update from @firstyear: - Custom field rhbz adjusted to https://bugzilla.redhat.com/show_bug.cgi?id=1456560
Metadata Update from @firstyear: - Issue assigned to firstyear
{root@ldapkdc 15:16} /opt/dirsrv/var/lib/dirsrv/slapd-localhost/db I0> sha256sum DBVERSION 290ac0a972ed0f733833910292885ee23deef934edf2ce0789f968f3e666f57a DBVERSION {root@ldapkdc 15:16} /opt/dirsrv/var/lib/dirsrv/slapd-localhost/db I0> sha256sum /home/william/development/389ds/ds/DBVERSION 290ac0a972ed0f733833910292885ee23deef934edf2ce0789f968f3e666f57a /home/william/development/389ds/ds/DBVERSION
The supplied DBversion file matches my version, so as a result, I don't know if the issue is in dbversion_read or not. Going to ask for more info.
Metadata Update from @firstyear: - Custom field type adjusted to defect
It seems the underlying issue is that DBVERSION in the userRoot was an empty file.
We can't avoid this happening (due to disk full), but we can display the error better, and explain recovery steps in our output.
I also noticed a lot of junk in the buffer, so we should set this to {0} too.
Affects 1.3.5, do we want to backport a fix to this @mreynolds ? It's low risk IMO.
<img alt="0001-Ticket-49273-crash-when-DBVERSIOn-is-corrupt.patch" src="/389-ds-base/issue/raw/a6d66e4b16195d4f8c7bd74ddc5f673c7e5601f722104889019c2266927a4616-0001-Ticket-49273-crash-when-DBVERSIOn-is-corrupt.patch" />
Metadata Update from @firstyear: - Custom field reviewstatus adjusted to review
Metadata Update from @nhosoi: - Custom field reviewstatus adjusted to ack (was: review)
commit 9e1a761 To ssh://git@pagure.io/389-ds-base.git 9cd5292..9e1a761 master -> master
Metadata Update from @firstyear: - Issue close_status updated to: fixed - Issue status updated to: Closed (was: Open)
commit d8cccbf To ssh://git@pagure.io/389-ds-base.git 9e1a761..d8cccbf master -> master
One line rule to correct typo.
This commit: d8cccbf does not add a "\n" to the logging line. Other logging you added is also missing "\n". And there are compiler warnings again :-(
In file included from ../389-ds-base/ldap/servers/slapd/csngen.h:20:0, from ../389-ds-base/ldap/servers/slapd/slap.h:113, from ../389-ds-base/ldap/servers/slapd/back-ldbm/back-ldbm.h:88, from ../389-ds-base/ldap/servers/slapd/back-ldbm/dbversion.c:15: ../389-ds-base/ldap/servers/slapd/back-ldbm/dbversion.c: In function ‘dbversion_write’: ../389-ds-base/ldap/servers/slapd/back-ldbm/dbversion.c:105:21: warning: too many arguments for format [-Wformat-extra-args] "Could not write to file \"%s\"\n", filename, 0, 0 ); ^ ../389-ds-base/ldap/servers/slapd/slapi-private.h:40:81: note: in definition of macro ‘slapi_log_err’ # define slapi_log_err(level, subsystem, ...) slapi_log_error(level, subsystem, __VA_ARGS__) ^~~~~~~~~~~ ../389-ds-base/ldap/servers/slapd/back-ldbm/dbversion.c:115:25: warning: too many arguments for format [-Wformat-extra-args] "Could not write to file \"%s\"\n", filename, 0, 0 ); ^ ../389-ds-base/ldap/servers/slapd/slapi-private.h:40:81: note: in definition of macro ‘slapi_log_err’ # define slapi_log_err(level, subsystem, ...) slapi_log_error(level, subsystem, __VA_ARGS__)
Can you please follow the steps we previously discussed before putting patches out for review? Thanks
Metadata Update from @mreynolds: - Custom field reviewstatus reset (from ack) - Issue status updated to: Open (was: Closed)
CC ldap/servers/slapd/back-ldbm/libback_ldbm_la-dbversion.lo /home/william/development/389ds/ds/ldap/servers/slapd/back-ldbm/archive.c: In function ‘ldbm_back_archive2ldbm’: /home/william/development/389ds/ds/ldap/servers/slapd/back-ldbm/archive.c:219:24: warning: declaration of ‘inst’ shadows a previous local [-Wshadow] ldbm_instance *inst; ^~~~ /home/william/development/389ds/ds/ldap/servers/slapd/back-ldbm/archive.c:29:20: note: shadowed declaration is here ldbm_instance *inst = NULL; ^~~~ CC ldap/servers/slapd/back-ldbm/libback_ldbm_la-dn2entry.lo
Only remaining warning.
<img alt="0001-Ticket-49273-Fix-compiler-warning-in-dbversion_write.patch" src="/389-ds-base/issue/raw/a792534f25fe975580f2ce5aac1130d2e42de1faa339f8338ee7d4ddbaa52533-0001-Ticket-49273-Fix-compiler-warning-in-dbversion_write.patch" />
Metadata Update from @mreynolds: - Issue set to the milestone: 1.3.7.0 (was: 0.0 NEEDS_TRIAGE)
Thanks! ack
Metadata Update from @mreynolds: - Custom field reviewstatus adjusted to ack (was: review)
commit 5d5b9c6 To ssh://git@pagure.io/389-ds-base.git 066aaad..5d5b9c6 master -> master
commit 04904b6 To ssh://git@pagure.io/389-ds-base.git bf34218..04904b6 389-ds-base-1.3.6 -> 389-ds-base-1.3.6
commit ad0855f To ssh://git@pagure.io/389-ds-base.git 556674c..ad0855f 389-ds-base-1.3.5 -> 389-ds-base-1.3.5
<img alt="0001-Ticket-49273-bak2db-doesn-t-operate-with-dbversion.patch" src="/389-ds-base/issue/raw/9c618f9a82053cd3c5ca78100b6211d71b9853bd82e5fdfb1939d5d518dd9cb7-0001-Ticket-49273-bak2db-doesn-t-operate-with-dbversion.patch" />
Metadata Update from @firstyear: - Custom field reviewstatus adjusted to review (was: ack) - Issue status updated to: Open (was: Closed)
commit d46a524f49e9beca4cc6afc4498e03eb8fee595f To ssh://git@pagure.io/389-ds-base.git bcbc3e9..18ccdb4 master -> master
commit 6725e03 To ssh://git@pagure.io/389-ds-base.git 306e217..6725e03 389-ds-base-1.3.6 -> 389-ds-base-1.3.6
commit 1b4d2c6 To ssh://git@pagure.io/389-ds-base.git ad0855f..1b4d2c6 389-ds-base-1.3.5 -> 389-ds-base-1.3.5
Fix cherry-pick error:
1b4d2c6..88d42bb 389-ds-base-1.3.5 -> 389-ds-base-1.3.5
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/2332
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)
Log in to comment on this ticket.