NDS error:attribute maintenance in progress (-6029) returned

  • 7009701
  • 07-Nov-2011
  • 12-Feb-2014

Environment

Novell eDirectory 8.8 for All Platforms


Situation

LDAP searches whose filter includes attribute in maintenance mode were not successful

Modifications that involved attributes in maintenance mode were not successful and would result in an error being returned.


Error Messages observed in ndstrace.log:

DSASearch failed, attribute maintenance in progress (-6029)

DS error:attribute maintenance in progress (-6029) returned

LDAPSearchToCB failed, err = attribute maintenance in progress (-6029)

Sending operation result 80:"":"NDS error: attribute maintenance in progress (-6029)" to connection


Cause / What changed:

See two conditions that trigger this condition under “Additional Informationâ€.


Resolution

For customers that have very large eDirectory databases and must ensure thisare concerned about this possible interruption of service, an engineering build is available through Novell Technical Services which allows the setting of an environment variable to prevent this process from happening.

The builds are only for eDirectory versions at least at 8856 or 8863.

Steps to apply:

1. Contact NTS for this build. ( Once a permanent build is available and made public, this TID will be modified )The patch just includes an updated libnds.so.1.0.0 library that would need to replace the existing one.On *nix platforms this library is located at /opt/novell/eDirectory/lib[64]/nds-modules/

The patch just includes an updated libnds.so.1.0.0 library that would need to replace the existing one.On *nix platforms this library is located at /opt/novell/eDirectory/lib[64]/nds-modules/
 
2.  Add the following line to the _ndsdb.ini configuration file and restart eDirectory. ( This file is located in the DIB directory, which by default on linux is at /var/opt/novell/eDirectory/data/dib/_ndsdb.ini )

disablemovetoattrcontainer=true

NOTE: This setting is simply delaying the inevitable.  Once the line disablemovetoattrcontainer=true is removed from the ini file and ndsd restarted the index maintenence process will begin.  Also note that system created indexes should not be disabled nor deleted as many eDirectory background processes depend on them.

Additional Information

Q: What does a -6029 attribute in maintenance mean?

A: A system generated index in being created.  This will happen if
1. an attribute has more than 25 values
2. an attribute value is greater than 2048 bytes. 
Under these conditions an index will be created for the attribute.  At the FLAIM level a new attribute container is created.  Then all objects in the dib are scanned for this attribute. If found the attribute is moved from the object's container to the new attribute container. 
 
Q: How long does this "maintenance" process take?
A: It really depends on the following factors:
    How large the eDirectory database (DIB) is.
    How many entries contain this attribute.
    How busy the server is with other processes.


Q.  Why should I care if an attribute is in maintenance mode?

A.  While an attribute is in maintenance mode, modifications or queries that directly involve this attribute are not allowed until this process completes.

For most environments, hitting this condition will not be a problem, it just depends on how long it takes to complete and if the unavailability of this attribute for a span of time is going to effect critical production type processes.  Keep in mind that th