Skip to main content

A Tivoli Directory Integrator Configuration file that contains a large number of schema items may result in errors when exporting the configuration file to the Default.Server and when using the tdisrvctl command's report function.


Technote (troubleshooting)


Problem(Abstract)


The attempt to export the TDI configuration file from the Configuration Editor directly to the server may result in a stack overflow error message.

An attempt to report on the same configuration using tdisrvctl from the command line may result in a Java exception.

Symptom

The following error(s) may occur:

Unhandled event loop exception
java.lang.StackOverflowError

error unmarshalling return; nested exception is:
java.io.EOFException

Cause

These issues are related to the number of schema items in a Connector, within the configuration xml file. When TDI performs an export, the underlying XML document is "serialized" before being sent to the TDI server. When serializing, the default method is to follow pointers and serialize the objects. But, for schema items, when following the "next sibling" pointers, this can cause a stack overflow when there are large number of siblings.

The number of schema items that can produce this error is approximately 600 items. This is a limitation with TDI.

Environment

Tivoli Directory Integrator with default Java environment settings.

Diagnosing the problem

The attempt to export the TDI configuration file from the Configuration Editor directly to the server may result in a stack overflow error message.

The <TDI Solution Directory>\workspace\.metadata\.log may contain the following error:

!ENTRY org.eclipse.ui 4 0 2013-01-28 08:34:05.921
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.StackOverflowError
at org.eclipse.swt.internal.win32.OS.GetLastActivePopup(Native Method)

An attempt to report on the same configuration using tdisrvctl from the command line result in a Java exception.

Command:

tdisrvctl.bat -h localhost -p <port> -K <jks file> -P <password> -T <jks file> -w <password>
-op report -c <config solution name> -l

Caused by: java.io.EOFExceptionnull java.io.ObjectInputStream$BlockDataInputStream.readFully(ObjectInputStream.java:2717)
java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1953)
java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1888) java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1770)
java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1346)

Resolving the problem

You may attempt to increase the stack size in the CE and the server, using the -Xss option.


The recommended work-around would be to delete the schema items in the connector prior to export.

To delete the schema items in the connector, go to the Input map tab of the Connector, click on one of the names in the schema, the rightmost table, then use "select all" (Ctrl+A) and "delete", and confirm. Save and close the AL before exporting successfully.

The schema items are mostly used by the developer in the CE, and can be read in again using the "Connect" button in the CE.


Product Alias/Synonym

TDI CE tdisrvctl

Rate this page:

(0 users)Average rating

Copyright and trademark information

IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.

Rate this page:


(0 users)Average rating

Add comments

Document information

Tivoli Directory Integrator

General


Software version:
7.1, 7.1.1


Operating system(s):
All Platforms


Reference #:
1623396


Modified date:
2013-01-28

Translate my page

Content navigation