Bug 703990

Summary: Support upgrade from Red Hat Directory Server
Product: [Retired] 389 Reporter: Rich Megginson <rmeggins>
Component: MigrationAssignee: Rich Megginson <rmeggins>
Status: CLOSED CURRENTRELEASE QA Contact: Viktor Ashirov <vashirov>
Severity: unspecified Docs Contact:
Priority: high    
Version: 1.2.8CC: amsharma, rmeggins
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 711516 (view as bug list) Environment:
Last Closed: 2015-12-07 16:33:07 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On:    
Bug Blocks: 434915, 711516    
Attachments:
Description Flags
0001-Bug-703990-Support-upgrade-from-Red-Hat-Directory-Se.patch
nkinder: review+
admin server 0001-Bug-703990-Support-upgrade-from-Red-Hat-Directory-Se.patch
nkinder: review+
fix bugs in previous patch id=498384
nkinder: review+
added 50fixNsState.pl
nkinder: review+
0001-Bug-703990-cross-platform-Support-upgrade-from-Red-H.patch nhosoi: review+

Description Rich Megginson 2011-05-11 19:47:53 UTC
Need to be able to upgrade from Red Hat Directory Server running on RHEL5 or earlier to 389 running on RHEL6 or later, or Fedora.

Must be able to run console/admin server in a mixed environment with some Red Hat Directory Servers and some 389 servers managed by the same console.

Must be able to upgrade from 32-bit to 64-bit system with LDIF files for the databases.

Must be able to upgrade the configuration DS instance from Red Hat to 389.

Comment 1 Rich Megginson 2011-05-11 19:51:09 UTC
Created attachment 498384 [details]
0001-Bug-703990-Support-upgrade-from-Red-Hat-Directory-Se.patch

Comment 2 Rich Megginson 2011-05-11 20:27:42 UTC
Created attachment 498393 [details]
admin server 0001-Bug-703990-Support-upgrade-from-Red-Hat-Directory-Se.patch

admin server part of bug

Comment 3 Rich Megginson 2011-05-11 21:55:14 UTC
To ssh://git.fedorahosted.org/git/389/ds.git
   7eec674..0580a92  master -> master
commit 0580a92aed03dbbf4f6fa8c0da679307c67056ed
Author: Rich Megginson <rmeggins@redhat.com>
Date:   Fri May 6 13:05:07 2011 -0600
    Reviewed by: nkinder (Thanks!)
    When doing an upgrade to a machine of a new architecture, allow the
    database to be upgraded "in place" by setup-ds.pl -u with LDIF files.
    If there is a file in the database ldif directory called
    backendname.upgrade.ldif, this file will be imported and renamed
    if the import was successful.
    Also fixed a bug in setup-ds.res
    Flag Day: yes
    Docs: yes
To ssh://git.fedorahosted.org/git/389/admin.git
   130ea2f..9a720c6  master -> master
commit 9a720c627765d1fbc6d1a3b98d1465f228b772b6
Author: Rich Megginson <rmeggins@redhat.com>
Date:   Wed May 11 14:20:23 2011 -0600
    Reviewed by: nkinder (Thanks!)
    Branch: master
    Fix Description: Added a new upgrade script - 25rebrand.pl - it runs as
    a postinst - for every instance, it will look for the product and instance
    entries - if it finds one for an old brand, it will copy and rebrand the
    entries, and remove the entries for the old brand.  In the post, it will
    rebrand the old admin server instance for this machine, and fix the
    configuration files.
    The old rebrand upgrade script 25renamefedorato389.pl is now obsolete
    and removed.
    I also noticed that the role and cos resource entries were in the wrong
    place.  Since they are ds brand and version dependent, I moved them to
    the location which will allow them to be updated for each instance when
    instances are updated.
    I added a shell script which can be used when you need to copy the
    configuration from one machine to another e.g. if you are upgrading from
    32-bit to 64-bit and cannot just do an inplace upgrade.
    Platforms tested: RHEL5 32-bit, RHEL6 x86_64
    Flag Day: yes
    Doc impact: yes

Comment 4 Rich Megginson 2011-05-19 23:23:25 UTC
Created attachment 499966 [details]
fix bugs in previous patch id=498384

Comment 5 Rich Megginson 2011-05-19 23:24:03 UTC
Created attachment 499967 [details]
added 50fixNsState.pl

Comment 6 Rich Megginson 2011-05-23 17:50:14 UTC
To ssh://git.fedorahosted.org/git/389/ds.git
   b3b4fd8..c244f86  master -> master
commit c244f868db6ba086228bf8afd71aedbb2237eafd
Author: Rich Megginson <rmeggins@redhat.com>
Date:   Thu May 19 16:17:27 2011 -0600
    Reviewed by: nkinder (Thanks!)
    Branch: master
    Fix Description: Couple of bugs with a previous patch
    1) offline import did not work because the import function did not get
    the instdir location of ldif2db
    2) spelling error in error message
    Platforms tested: RHEL6 x86_64 (from RHEL 5 32-bit and 64-bit)
    Flag Day: no
    Doc impact: yes
commit c4d9f45af88ba0f7c34f202d216ff9e95799be6d
Author: Rich Megginson <rmeggins@redhat.com>
Date:   Wed May 18 13:43:18 2011 -0600
    Reviewed by: nkinder (Thanks!)
    Branch: master
    Fix Description: added 50fixNsState.pl - if upgrading from a machine of
    a different arch, we need to fix the nsState attribute value used by the
    uniqueid generator and the CSN generator.  If upgrading from a 32-bit to
    a 64-bit, we cannot update the uniqueid generator due to a bug in the
    generator code, so we just delete the entry and let the server
    recreate it.
    Platforms tested: RHEL6 x86_64 (from RHEL 5 32-bit and 64-bit)
    Flag Day: no
    Doc impact: yes

Comment 11 Rich Megginson 2011-08-31 20:18:01 UTC
Created attachment 520886 [details]
0001-Bug-703990-cross-platform-Support-upgrade-from-Red-H.patch

Comment 12 Rich Megginson 2011-08-31 20:43:34 UTC
To ssh://git.fedorahosted.org/git/389/ds.git
   c17452d..1afc45e  master -> master
commit 1afc45edb18d22c6bb9c7160a1065f7ec3560622
Author: Rich Megginson <rmeggins@redhat.com>
Date:   Tue Aug 30 17:47:55 2011 -0600
    Reviewed by: nhosoi (Thanks!)
    Branch: master
    Fix Description: There was bug in handling nsState from big-endian systems.
    Also, create the instance specific directories if they do not exist, which
    is useful if doing a cross-platform upgrade from a system that does not
    use the same paths.
    Platforms tested: RHEL6 x86_64
    Flag Day: no
    Doc impact: no

Comment 13 Amita Sharma 2011-09-08 11:31:23 UTC
I have successfully tested migration from DS8.1 (rhel5-32bit) to DS9.0 (rhel6-64bit),  hence marking as VERIFIED.