Return values, Errors, and Exceptions

During import and export the methods can provide error information to the sync engine. These errors can be returned on an object level or as a fatal error.

Depending on the error the step run result or WMI return message will be different.

Fatal errors: stopped-

Other errors: competed-export-errors, completed--warnings

Errors can be categorized into the following:

  • Export Errors

  • Special action. An error where the sync engine should take an action to correct the problem. These will not be visible in the UI.

  • Object level error visible in the UI

  • Import Errors

  • Discovery error which tell the sync engine to not commit the watermark but continue the run.

  • Discovery error which is a fatal import error and stops the run.

  • Connection errors

  • Connectivity issues which will stop the run.

  • Error from the Sync Engine to the MA.

Export Errors, Special Actions

The following list can be returned on an object level during ExportEntries. These also have a corresponding object level error when the sync engine is not supposed to take a special action.

All these errors will put the object into the next export pass.

Error Notes

(cd-missing-object-sa)

convert-update-to-add

Change object from update to add.

(cd-existing-object-sa)

convert-add-to-update

Change object from add to update.

(dn-attribute-failure-sa)

next-pass-retry

Put the object in a second export pass.

(non-existing-parent-sa)

provision-parent

Re-provision parent hierarchy

Export Errors, Object level errors

The following list can be returned on an object during ExportEntries.

Error Notes

cd-error

This error is returned when the connected data source has a specialized error type. This error is accompanied by the <cd-error> element, and the information contained there should aid in troubleshooting.

cd-missing-object

This error is returned when a modify of an object is exported to the connected data source, but the object cannot be found in the connected data source.

cd-existing-object

This error is returned when an add is exported to the connected data source, but the object is already present in the connected data source.

dn-attributes-failure

This error is returned when exporting an add or modify sets a reference value for which there is no corresponding connected data source object. If you see this error, use the connector space object viewer to determine which changes to reference attributes were not successfully exported.

Non-existent-parent

This error is returned by the management agent for LDAP when either the export of an add or a rename fails because the parent object does not exist in the connected data source.

Discovery errors, continue run

The following list can be returned on an object level during ImportEntries. These will be reported as errors in the UI. When the first object with a discovery error is returned the watermark will not be persisted for the remainder of the run.

Error Notes

missing-dn

It indicates that the management agent could read the element and parse it, but there was no domain name value for the object.

dn-not-ldap-conformant

This error is returned when a management agent reports a domain name value that does not conform to the LDAP specification.

invalid-dn

This error is returned when a management agent reports that a domain name does not meet an FIM constraint.

Most discovery errors will be detected by the Sync Engine when it is trying to persist the connector space object. These will be visible in the UI but they are not available for the MA to consume.

Discovery errors, fatal

The following list can be returned on an object level during ImportEntries. These errors indicate a corrupted delta change log and that a full import is needed to correct. These errors will also terminate the run (EndImport will be called).

Error Notes

parse-error

This error is returned in delta mode when it cannot parse an entry.

read-error

This error is returned by call-based management agents when there is a generic error reading a particular object.

Connection errors, fatal

Connection errors can appear in import, export, and password management.

The EndImport/EndExport method will be called after an exception is thrown.

Error Notes

stopped-server-down

The run step stopped because the data source server is down.

stopped-bad-server-credentials

The run step stopped because the extensible management agent reported that the credentials are invalid.

stopped-extensible-extension-error

The run step stopped because the extensible management agent returned an ExtensibleExtensionException exception.

stopped-entry-point-not-implemented

The run step stopped because the extensible management agent does not implement the entry point.

stopped-unexpected-data

The run step stopped because the extensible management agent encountered unexpected data.

stopped-extension-dll-exception

The run step stopped because the extension DLL threw an exception.

Exceptions

The following is a list of exceptions that can be thrown by the Extensible Connectivity 2.2 Management Agent.

Exception Type Condition

AccessDeniedException

This is thrown when the password set is denied.

BadServerCredentialsException

The credentials that are used to connect to the connected directory are not valid. When this exception is thrown by this method, the run stops and the WMI Provider returns the string stopped-bad-server-credentials.

This exception does not generate an event log entry.

ClosePasswordConnectionException

Thrown when an error occurred while closing the connection.

EntryPointNotImplementedException

The rules extension does not implement this method. When this exception is thrown by this method, the run stops and the WMI Provider returns the string stopped-entry-point-not-implemented.

This exception does not generate an event log entry.

ExtensibleExtensionException

An unexpected error occurred in the extension. When this exception is thrown by this method, the run stops and the WMI Provider returns the string stopped-extensible-extension-error.

This exception generates an event log entry.

ObjectNotFoundException

Thrown when a specified object cannot be found.

ObjectTypeNotSupportedException

Thrown when the object type does not support password set.

PasswordExtensionException

An unexpected error occurred in the extension.

This exception generates an event log entry.

PasswordIllFormedException

Thrown when the password specified was ill formed.

PasswordPolicyViolationException

Thrown when the password specified violates the password policy.

ServerDownException

The connected directory extension cannot establish a connection to the connected directory. When this exception is thrown by this method, the run stops and the WMI Provider returns the string stopped-server-down.

This exception does not generate an event log entry.

UnexpectedDataException

The method received unexpected data. When this exception is thrown by this method, the run stops and the WMI Provider returns the string stopped-unexpected-data.

This exception generates an event log entry.