058299a Bug 644608 - RHDS 8.1->8.2 upgrade fails to properly migrate ACIs

1 file Authored by Noriko Hosoi 8 years ago , Committed by nhosoi 8 years ago ,
    Bug 644608 - RHDS 8.1->8.2 upgrade fails to properly migrate ACIs
    
    https://bugzilla.redhat.com/show_bug.cgi?id=644608
    
    Description: Upgrade script ##upgradednformat.pl generates an
    ancestorid index file in which the entry IDs are not sorted
    in the index values.
    This was caused because
    1. upgradednformat.pl copies db files to a work dir
         /path/to/db/<inst>/dnupgrade/<inst>
       and run upgradednformat against the work dir.
    2. Since ancestorid index needs to be created from the scratch,
       import/upgradednformat code deletes the index and recreates
       it.
    3. When creating the index file, dblayer_open_file checks if
       the to-be-opened index file is (in the standard location AND
       the file exists) or not.  In this case, the condition is
       satisfied.  Thus, the db is created using an absolute path
       and closed once.  Then, it is reopened using a relative path.
    4. Before opening an index file, callback functions for libdb
       are set.  idl_new_compare_dups is one of them which is used
       to sort entry IDs in the secondary index attribute values.
       The setting is discarded by the close described in 3.
    This patch resets the db callbacks and flags after the close.