Types and Causes of DS Errors

     

The first step in dealing with DS problems is to understand the nature of the error. DS errors can be categorized into transitory DS errors and recurring DS errors . These terms refer to the conditions that cause the DS error to occur and not to the DS error code reported in response to the conditions. In addition to understanding the nature of a DS error, you need to have an understanding of the types of conditions that can cause DS errors to occur in order to narrow down the area in which to concentrate your trouble shooting efforts.

NOTE

Not all DS errors are bad errors. Some errors are considered normal errors. A normal error ”perhaps a better term is informational error ”is one that logically happens in the DS . Examples are the collision errors and DSA common request errors you see in DSTrace. These informational errors are displayed to help you see how DS handles processes such as user logins and changes in the DS . For example, DSTrace shows a -601 error (no such object) when a user tries to log in using a wrong context; this is an error from a programmatic point of view, but it's not an error from the DS operation's point of view.


Transitory DS Errors

As mentioned previously, transitory DS errors are errors that occur on an intermittent basis or that occur only for a short time and do not reoccur. These errors are generally caused by conditions external to the server that report the error; however, transitory errors can also occur due to data inconsistency between different replicas of the same partition.

A commonly encountered transitory DS error is error code -625 (transport failure). It is caused by communication failure between two servers that hold replicas of the same partition. The communication fault may be due to a down WAN connection or a disruption of the LAN (such as beaconing in a Token Ring environment). Both of these error conditions are external to the servers, out of the control of DS, and can't be resolved by DS; however, when the communication link is reestablished, the DS -625 error automatically stops and does not reoccur unless the link is down again.

In a well- maintained , healthy DS tree, most of the DS errors are of the transitory type. Therefore, when you're presented with a DS error, it is best to remember not to panic and to give DS some time (say, 30 minutes to an hour ; 2 to 4 hours for a large tree or a situation that involves slow WANs) to see whether the error can be autocorrected.

Recurring DS Errors

As mentioned previously, a recurring DS error is an error that results from a permanent error condition that can't be correctly resolved without human intervention. Errors of this type persist until the cause of the error is identified and corrected. It is important to note that not all recurring errors are attributed to DS or the DS databases.

Although most of the time error -625 is a transitory error, it can also be a recurring error. For example, if a server holding a replica of a partition is removed from the network without going through the proper procedure, the replica ring becomes inconsistent. This is a result of the fact that the other servers in the replica ring are not aware that this one server is no longer available and will continue to attempt to synchronize updates with this server. The resulting -625 error continues to be reported until the replica ring is repaired.

NOTE

For the procedure on repairing replica ring inconsistency, see Chapter 11, " Examples from the Real World ."


Another common recurring DS error is -601 (no such object). A DS user or an application attempting to access a nonexistent DS object causes this. For instance, say a user is trying to log in, but the context of the User object is wrong. The user will continue to receive this -601 error code after each attempt. Keep in mind, however, that this -601 error code may also be transitory, depending on the cause of the error. For example, the login process will check to see whether the Login Script attribute exists for a user before executing it. If the user does not have a personal login script, a - 138601 error will be returned to the login process.

DS Error-Causing Conditions

DS errors can be divided into three categories: informational messages, communication- related errors, and errors due to data inconsistency. Informational messages are nonfatal errors that are returned by DS to the requesting client to inform it of one or more of the following conditions:

  • The request cannot be processed at this time due to outstanding operation. For example, you're trying to perform a partitioning operation while a previous one is still in progress.

  • The request cannot be processed due to insufficient DS rights. For example, if the requesting client doesn't have the Browse object right to an object, a -601 error (no such object) will be returned, even though the object does exist.

  • The information provided in the request is invalid or is missing some mandatory fields.

  • The request references a nonexistent object or object class.

  • An unexpected response was received while the request was being processed. For example, the source server cannot connect to another server for tree-walking purposes (error -635).

Communication-related errors are errors that result from LAN or WAN failures. Given that DS is a distributed and replicated database, DS must be able to communicate with other servers within the same DS tree. Any failure in the underlying hardware and software to provide the capability to communicate between servers results in disruption of DS processes and operations. Fortunately, communication-related DS errors are generally transitory and are resolved when the communication capability between servers is restored. Some possible causes of communication-related DS errors are as follows :

  • Faulty LAN drivers

  • Faulty LAN/WAN hardware, such as cable and network cards

  • Unreliable network infrastructure, such as slow or often congested WAN links

  • Incorrect server (internal) network addresses contained in the DS database of a server (perhaps the server didn't receive the updated information from other servers in the replica ring due to other errors)

  • Duplicate server internal network addresses or IP addresses

  • Route and/or Service Advertising Protocol (SAP) filtering, or Service Location Protocol (SLP) “related problems.

NOTE

In NetWare 3 and NetWare 4, IPX INTERNAL NET is used in the AUTOEXEC.NCF to specify the server's internal (Internetwork Packet Exchange [ IPX ]) address. In NetWare 5 and higher, ServerID is used instead. However, the server console command CONFIG still reports the value as the IPX internal network number.


Communication errors can result in DS data inconsistency, such as a user object existing in one replica but not in another. This is due to replicas of the same partition being out of sync; however, such inconsistencies are often transitory in nature and self-correct when communication is reestablished.

On the other hand, DS data inconsistency can be of the recurring type. For example, if the schema or one of the DS database files on a server is corrupted, DS can't rectify the resulting data inconsistency automatically, and manual intervention is required.

To correctly identify the condition under which a specific DS error occurs, you need to know the meaning of the reported error code and the source of the error code. The rest of this chapter is dedicated to describing some of the most commonly encountered DS error codes and the possible conditions under which they occur. The discussions are divided into the following categories, based on the error code grouping:

  • Operating system “related DS error codes (-1 through -255)

  • DS client application programming interface (API) error codes (-301 through -399)

  • Server-based DS client library error codes (-400 through -599)

  • DSA error codes (-601 through -799, and -6001 through -6999).

NOTE

Error codes used by Novell's DirXML (between -286 and -300) and SecureLogin (between -102 and -430) products overlap with the DS error codes. Therefore, you should be careful when interpreting the meaning of an error code if you have these products installed.


TIP

Due to the way the search engine works, when searching for DS error codes using Novell's online support knowledge base, you enter the code using the positive version of a negative number that is reported. For instance, if you are looking for information about error code -6018, enter 6018 in the search box instead of “6018 . Alternatively, you can put the negative number within quotes, such as "-6018" . Otherwise, the search could result in a large number of irrelevant hits.


One set of server-based error codes, -4991 through -4999, is related to eDirectory errors, but these errors are not observed on the NetWare platform. These error codes are associated with the DHost process.

Because NDS was initially developed for the NetWare platform, NetWare Core Protocol (NCP) is used for communications between NetWare servers and between clients and the servers. In order for eDirectory running on Windows and Linux/Unix/Linux to properly communicate with the NetWare implementation, a special application, called DHost, is used. DHost sits underneath eDirectory and provides functionality on non-NetWare platforms that the NetWare operating system provides naturally. The services provided by DHost include the (small) NCP Engine to handle communications with NetWare servers, the Watchdog function to ensure that workstations running Client32 are still connected, and an event system to provide a way for applications to monitor the DS activity of the server.

NOTE

DHost error codes range between -4991 (0xFFFFEC81) and -4999 (0xFFFFEC79), and NCP Engine “related errors range between -5187 (0xFFFFEBBD) and -5199 (0xFFFFEBB1).


See Chapter 6 for a detailed discussion about the DS processes that generate the errors.



Novell's Guide to Troubleshooting eDirectory
Novells Guide to Troubleshooting eDirectory
ISBN: 0789731460
EAN: 2147483647
Year: 2003
Pages: 173

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net