Skip navigation
Currently Being Moderated

LDAP sync suddenly broken - how to find the reasons?

Jan 5, 2011 6:57 AM

Hi all,

 

an working domain sync between Microsoft-Active Directory and LiveCycle is suddenly broken.

 

Is this an known problem?

Shouldn't Domain sync just skip this individual field/user and continue with the other few thousand users?

 

 

How to find the user - or field, that does break the sync?

Any logLevels that need to be increased?

 

 

the exception looks like:

 

 

2011-01-05 13:30:00,469 INFO  [com.adobe.idp.um.businesslogic.directoryservices.DirectorySynchroniz ationManagerBean] UserM:: [Thread Hashcode: 27719747] ---->Sync: Start reading users in domain: XXXXX
2011-01-05 13:30:00,594 INFO  [com.adobe.idp.um.businesslogic.directoryservices.DirectorySynchroniz ationManagerBean] UserM:: [Thread Hashcode: 27719747] ---->Sync: Reading Users from Directory: XXXXX
2011-01-05 13:30:02,469 WARN  [com.adobe.idp.common.errors.exception.IDPLoggedException] UserM:GENERIC_WARNING: [Thread Hashcode: 27719747] | [com.adobe.idp.storeprovider.jdbc.DBStatement] errorCode:12290 errorCodeHEX:0x3002 message:execute non-query failure(update EDCPRINCIPALUSERENTITY set EDCPRINCIPALUSERENTITY.address = ?, EDCPRINCIPALUSERENTITY.familyName = ?, EDCPRINCIPALUSERENTITY.givenName = ?, EDCPRINCIPALUSERENTITY.initials = ?, EDCPRINCIPALUSERENTITY.locale = ?, EDCPRINCIPALUSERENTITY.telephoneNumber = ?, EDCPRINCIPALUSERENTITY.timezone = ?, EDCPRINCIPALUSERENTITY.bizCalKey = ?, EDCPRINCIPALUSERENTITY.uidString = ?, EDCPRINCIPALUSERENTITY.sequenceNumber = EDCPRINCIPALUSERENTITY.sequenceNumber + 1 from EDCPRINCIPALUSERENTITY where EDCPRINCIPALUSERENTITY.refPrincipalId = convert(char(36),?) ) chainedException:com.microsoft.sqlserver.jdbc.SQLServerException: String or binary data would be truncated.chainedExceptionMessage:String or binary data would be truncated. chainedException trace:com.microsoft.sqlserver.jdbc.SQLServerException: String or binary data would be truncated.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError (Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePrep aredStatement(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecC md.doExecute(Unknown Source)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(Unkno wn Source)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(Unknow n Source)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(Unkn own Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.executeUpdate (Unknown Source)
at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.executeUpdate (CachedPreparedStatement.java:95)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdat e(WrappedPreparedStatement.java:251)
at com.adobe.idp.storeprovider.jdbc.DBStatement.executeNonQuery(DBStatem ent.java:405)
at com.adobe.idp.storeprovider.jdbc.DBStoreProvider.update(DBStoreProvid er.java:1357)
at com.adobe.idp.um.dpl.DirectoryFactory.updateUserEntity(DirectoryFacto ry.java:1084)
at com.adobe.idp.um.dpl.DirectoryFactory.persistPrincipalUserGroupEntity (DirectoryFactory.java:2153)
at com.adobe.idp.um.dpl.DirectoryFactory.persistPrincipal(DirectoryFacto ry.java:2134)
at com.adobe.idp.um.dpl.DirectoryFactory.persistSyncPrincipal(DirectoryF actory.java:1985)
at com.adobe.idp.um.businesslogic.directoryservices.DirectorySynchroniza tionManagerBean.transactPrincipalsBatchFromDomain(DirectorySynchroniza tionManagerBean.java:1407)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at org.jboss.invocation.Invocation.performCall(Invocation.java:359)
at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(S tatelessSessionContainer.java:237)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invo ke(CachedConnectionInterceptor.java:158)
at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(Stat elessSessionInstanceInterceptor.java:169)
at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidation Interceptor.java:63)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInte rceptor.java:121)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep torCMT.java:404)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:1 81)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor. java:168)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFacto ryFinderInterceptor.java:138)
at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:6 48)
at org.jboss.ejb.Container.invoke(Container.java:960)
at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalPro xyFactory.java:430)
at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSes sionProxy.java:103)
at $Proxy254.transactPrincipalsBatchFromDomain(Unknown Source)
at com.adobe.idp.um.businesslogic.directoryservices.DirectorySynchroniza tionManagerBean.persistPrincipalsFromDomainDirectory(DirectorySynchron izationManagerBean.java:1269)
at com.adobe.idp.um.businesslogic.directoryservices.DirectorySynchroniza tionManagerBean.synchronizePrincipalsFromDomain(DirectorySynchronizati onManagerBean.java:1038)
at com.adobe.idp.um.businesslogic.directoryservices.DirectorySynchroniza tionManagerBean.synchronizeReadUsers(DirectorySynchronizationManagerBe an.java:1595)
at com.adobe.idp.um.businesslogic.directoryservices.DirectorySynchroniza tionManagerBean.synchronizeProviders(DirectorySynchronizationManagerBe an.java:2114)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at org.jboss.invocation.Invocation.performCall(Invocation.java:359)
at org.jboss.ejb.StatelessSessionContainer$ContainerInterceptor.invoke(S tatelessSessionContainer.java:237)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invo ke(CachedConnectionInterceptor.java:158)
at org.jboss.ejb.plugins.StatelessSessionInstanceInterceptor.invoke(Stat elessSessionInstanceInterceptor.java:169)
at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidation Interceptor.java:63)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInte rceptor.java:121)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxIntercep torCMT.java:378)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:1 81)
at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor. java:168)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFacto ryFinderInterceptor.java:138)
at org.jboss.ejb.SessionContainer.internalInvoke(SessionContainer.java:6 48)
at org.jboss.ejb.Container.invoke(Container.java:960)
at org.jboss.ejb.plugins.local.BaseLocalProxyFactory.invoke(BaseLocalPro xyFactory.java:430)
at org.jboss.ejb.plugins.local.StatelessSessionProxy.invoke(StatelessSes sionProxy.java:103)
at $Proxy254.synchronizeProviders(Unknown Source)
at com.adobe.idp.um.util.UMSchedulerUtil$ScheduledHelper.synchronizeProv iders(UMSchedulerUtil.java:575)
at com.adobe.idp.um.scheduler.DirectorySyncJob.executeSyncFinisher(Direc torySyncJob.java:146)
at com.adobe.idp.um.scheduler.DirectorySyncJob.execute(DirectorySyncJob. java:99)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.j ava:529)

 

 

Thanks for any hints...

 

Diletttanto

 
Replies
  • Currently Being Moderated
    Jan 5, 2011 10:27 PM   in reply to Dilettanto

    To find out which user/group is causing the problem, you can use LDAPDecoder as a proxy in between.

     

    1. Download slamd-2.0.1.zip from http://www.slamd.com. LDAPDecoder tool is located at /tools/LDAPDecoder directory.

    2. Start LDAPDecoder as,

    java -jar LDAPDecoder.jar -h {LDAPserverAddress} -p {LDAPserverPort} -L {listenPort} -f "output.log"

     

    3. Point your LC Enterprise Server to the {listenport} and the {serverAddress where LDAP Decoder is running}.

    4. The output.log will help in identifying which princiapl from LDAP is breaking the sync process.

     

    The related doc for usage is,

    http://blogs.sun.com/DirectoryManager/entry/decoding_ldap_communicatio n

     

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points