New branch 'private-ticket-359-rhel-6.3' available with the following commits: commit f92f3a6e91498770aa8e93b6842ba752d4ed279a Author: Noriko Hosoi nhosoi@totoro.usersys.redhat.com Date: Wed May 9 15:39:17 2012 -0700
Trac Ticket #359 - Database RUV could mismatch the one in changelog under the stress
https://fedorahosted.org/389/ticket/359
Fix description: . csnplRollUp (csnpl.c) - To get the first committed csndata, if there are preceded uncommitted csn's in the csnpl list, this patch skips them and returns the first committed csn. . llistRemoveCurrentAndGetNext (llist.c) - when the last item in the list is removed, tail pointer is initialized, too. . ldbm_back_add, ldbm_back_modrdn (ldbm_add.c, ldbm_modrdn.c) - make sure SLAPI_RESULT_CODE and SLAPI_PLUGIN_OPRETURN are set not just when the transaction is started, but in general. If an error occurs the RESULT_CODE triggers to remove the CSN from the RUV element. . plugin_call_func (plugin.c) - when the plugin type is be pre/ post op, respect the fatal error code (-1) instead of OR the results from all the plugins. The error code -1 is checked in ldap_back_add and ldbm_back_modrdn to distinguish from the URP operation bits.
Ported commit f0f74b57f81998a325dc7472b9ea9b44c5ff6439. (cherry picked from commit ed1ebf66451a16144563d2d3d636fee6451009a4)
commit 409a85203e2185bb69e76532831386103204a41f Author: Rich Megginson rmeggins@redhat.com Date: Thu May 3 08:21:53 2012 -0600
Ticket #348 - crash in ldap_initialize with multiple threads
https://fedorahosted.org/389/ticket/348 Resolves: Ticket #348 Bug Description: crash in ldap_initialize with multiple threads Reviewed by: mreynolds (Thanks!) Branch: rhel-6.3 Fix Description: ldclt was not calling PR_Init - needed in order to use PR_CallOnce Platforms tested: RHEL6 x86_64 Flag Day: no Doc impact: no (cherry picked from commit 9368250f2db4353cec7b489cb48c9c1f192f5c90)
commit feff1524c2864e1dcb347218597f74bdd1b96fcb Author: Rich Megginson rmeggins@redhat.com Date: Tue Apr 24 20:09:38 2012 -0600
Ticket #348 - crash in ldap_initialize with multiple threads
https://fedorahosted.org/389/ticket/348 Resolves: Ticket #348 Bug Description: crash in ldap_initialize with multiple threads Reviewed by: mreynolds (Thanks!) Branch: master Fix Description: Protect calls to ldap_initialize() with a mutex to prevent multiple threads from calling it at the same time. Platforms tested: RHEL6 x86_64 Flag Day: no Doc impact: no (cherry picked from commit 23c088919f66de014ee7f9aad407468e51451405) (cherry picked from commit 3f73fa545d6e0edb9b4620be057e564ee5067276)
commit 47b11e178ef21b61712462795c154f57210873e0 Author: Rich Megginson rmeggins@redhat.com Date: Fri Apr 20 20:15:21 2012 -0600
Ticket #347 - IPA dirsvr seg-fault during system longevity test
https://fedorahosted.org/389/ticket/347 Resolves: Ticket 347 Bug Description: IPA dirsvr seg-fault during system longevity test Reviewed by: nhosoi, mreynolds (Thanks!) Branch: rhel-6.3 Fix Description: Somehow the DB_MULTIPLE_NEXT pointer is being set to an invalid value (-5). This causes the next iteration to return memory that points to before the stack buffer, causing a seg fault. Valid values for the pointer are > -1. The value -1 is used as the list terminator value. The code that constructs the buffer is in the libdb function __bam_bulk in bt_cursor.c. The fix is to check for a value < -1, assume the page or value has been deleted out from under us, and do a dbc->get to get the next buffer full, if any. The code also needs to check for duplicate IDs being returned. In the failure case described above, it is possible that the last ID returned in the multiple buffer is the first ID in the next buffer. In that case, we want to skip the ID that was already added to the IDL. Platforms tested: RHEL6 x86_64 Flag Day: no Doc impact: no (cherry picked from commit 5d45dd8de06aaee3e0a52c85fa5b3e18febd7a27)
commit 1442b8dfe240f6abb9d0e5b582fc2b7e883425dd Author: Rich Megginson rmeggins@redhat.com Date: Tue Apr 10 13:49:26 2012 -0600
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: previous fix had a typo and failed index tests Platforms tested: RHEL6 x86_64 Flag Day: no Doc impact: no BZ: 808770 (cherry picked from commit a50f8c048801dfa50b692055aa7eabd7486a0051) (cherry picked from commit 182ab2e0229fc3bd66b6c0301a9c564f5afcac68)
commit e373134642dd23848c50be56f173b8bd34c03c4d Author: Rich Megginson rmeggins@redhat.com Date: Sat Apr 7 09:05:18 2012 -0600
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)
commit 4dae58f116cb0541f4d0a8ffc4a4947fce51d12e Author: Rich Megginson rmeggins@redhat.com Date: Sat Apr 7 09:05:18 2012 -0600
Bug 808770 - [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://bugzilla.redhat.com/show_bug.cgi?id=808770 Resolves: bug 808770 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: ??? 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 (cherry picked from commit dcb46ca16114e51108c1a0549235af5623f7596b)
commit 0af193c3a5c5bac9b77b933de3ba6fc96c310b3f Author: Rich Megginson rmeggins@redhat.com Date: Tue Mar 13 11:45:32 2012 -0600
Ticket #305 - Certain CMP operations hang or cause ns-slapd to crash
https://fedorahosted.org/389/ticket/305 Resolves: Ticket #305 Bug Description: Certain CMP operations hang or cause ns-slapd to crash Reviewed by: nkinder, nhosoi (Thanks!) Branch: rhel-6.3 Fix Description: This addresses the hang part, which I incorrectly assumed was related to the crash part. The code using vattr_map_sp_next() was causing an infinite loop (and hang) by passing the list head every time rather than the previous next pointer. In addition, LDAP compare operations were not working if a vattr service provider was in effect for an attribute, and there was a real value for the attribute in the entry. The rc code was being set to -1 to indicate no vattr service providers provided the value, but it was not being reset to 0 when the value was found in the actual entry. The fix is to reset rc to 0 (success) and *result to 0 (compare false) when testing the real attribute. Platforms tested: RHEL6 x86_64 Flag Day: no Doc impact: no (cherry picked from commit 55135e37a9e330f084ab7d254306cbf155526b25) (cherry picked from commit f00c678e36c138a7991b6c3c4780d40af30dc7c4)
commit 48776fe36afe559ee21cd450154805a2f30ee1de Author: Rich Megginson rmeggins@redhat.com Date: Thu Mar 1 18:50:05 2012 -0700
memleak in normalize_mods2bvals
do not re malloc the berval again - only need to do it once Reviewed by: nhosoi (Thanks!) (cherry picked from commit f6e4d3d0d4313ef9b4396ab8433a1c260989274b) (cherry picked from commit b05139ba374e947fad681d6c97af5dc3800c4bda)
commit 5d1a743db2ecbe93d7c5892be2912997f5a1b78e Author: Rich Megginson rmeggins@redhat.com Date: Thu Mar 1 18:47:34 2012 -0700
memleak in mep_parse_config_entry
pass in value to slapi_sdn_new_dn_passin() so that entry->template_sdn will own the memory Reviewed by: nhosoi (Thanks!) (cherry picked from commit 54fbe0b3b3669a0379a4b0a50769b4855539c225) (cherry picked from commit c0eea24cb59f234903839604dd1be521897c3c58)
commit d7e36b3dd5f023aa209109c8974dffc0d07e7542 Author: Rich Megginson rmeggins@redhat.com Date: Wed Feb 29 17:27:32 2012 -0700
handle null smods
Under certain error conditions, smods will be NULL at the end of the function. Do not call passout if smods is NULL. Reviewed by: nhosoi (Thanks!) (cherry picked from commit afd6b1fd63c48642dd050e0e821b3d7c69fc4991) (cherry picked from commit 90bc9eb924e373f38ad1a8ccd25aecd74a2799e0)
commit 86045935a2f9ef3dd3d727cad9b468d7398393d5 Author: Mark Reynolds mareynol@redhat.com Date: Fri Mar 2 11:51:58 2012 -0500
Ticket #305 - Certain CMP operations hang or cause ns-slapd to crash
Bug Description: There is a potential double free in cos_cache_query_attr(). If you run concurrent search or compares its very easy to crash the server in this code
Fix Description: Moved the DN normalization into the cache rebuilding code.
https://fedorahosted.org/389/ticket/305 (cherry picked from commit 142c8f0fe93d77990df8ce991a8020918276ddd8) (cherry picked from commit b9ab70a3594830daed65035031520f6d310b2540)
389-commits@lists.fedoraproject.org