cgrzemba / 389-ds-base

Forked from 389-ds-base 5 years ago
Clone

e373134 Ticket #336 - [abrt] 389-ds-base-1.2.10.4-2.fc16: index_range_read_ext: Process /usr/sbin/ns-slapd was killed by signal 11 (SIGSEGV)

Authored and Committed by rmeggins 11 years ago
    Ticket #336 - [abrt] 389-ds-base-1.2.10.4-2.fc16: index_range_read_ext: Process /usr/sbin/ns-slapd was killed by signal 11 (SIGSEGV)
    
    https://fedorahosted.org/389/ticket/336
    Resolves: Ticket #336
    Bug Description: [abrt] 389-ds-base-1.2.10.4-2.fc16: index_range_read_ext: Process /usr/sbin/ns-slapd was killed by signal 11 (SIGSEGV)
    Reviewed by: nhosoi (Thanks!)
    Branch: rhel-6.3
    Fix Description:
    1) Entries can be deleted out from under a search operation.  The range read
    code was not handling this situation correctly.  The code should notice that
    the index query was empty, and continue to the next highest key in the range.
    2) DB cursor c_close() functions can return DB_LOCK_DEADLOCK that must be
    reported to the higher level operation functions.  If not, then subsequent
    operations in the same transaction fail.  When a DB_LOCK_DEADLOCK is returned
    by any DB update operation in the transaction, the transaction must be aborted
    and a new transaction begun before any other transacted db operations can
    occur.
    Platforms tested: RHEL6 x86_64
    Flag Day: no
    Doc impact: no
    BZ: 808770
    (cherry picked from commit d09ce0e3ab2ea24496ee44622b050e007bb3cb8a)
    (cherry picked from commit a2fb904458713b493e3b84bafa1771675d1bced9)