Issue #35 has been updated by Clément OUDOT.

Clément OUDOT wrote:
> Clément OUDOT wrote:
> > I precise I use asyncLdapSourceService, but this clean phase works well 
> > with the same picot in source and destination...
> 
> By the way, it works with ldapSourceService. I will investigate a little more.


So, the issue only occurs with asyncLdapSourceService. In this case, the search 
in the destination LDAP directory is correctly done (the same way as with 
ldapSourceService, which seems normal because I think it is done by 
ldapDestinationService). But then, to match the entries found in the 
destination LDAP directory in the source directory, the DN used as base in the 
searhc is the *destintation* DN and not the *source* DN:

<pre>
4f915f7d conn=1081 op=11 SRCH base="initials=gla.test,ou=people,ou=XXX" scope=0 
deref=3 filter="(&(objectClass=person)(uid=gla.test))"
</pre>

The DN in the source is @uid=gla.test,ou=people,ou=XXX@ and not 
@initials=gla.test,ou=people,ou=XXX@. Notice that the filter used is good.


----------------------------------------
Bug #35: Cannot use different pivotAttrs between source and destination
http://tools.lsc-project.org/issues/35

Author: Clément OUDOT
Status: Feedback
Priority: High
Assigned to: Clément OUDOT
Category: Core
Target version: 2.0
Problem in version: 


Hello,

This configuration fails:
<pre>
lsc.tasks.user.dstService = org.lsc.jndi.SimpleJndiDstService
lsc.tasks.user.dstService.attrs = uid cn sn givenName mail telephoneNumber 
sAMAccountName userPrincipalName userAccountControl unicodePwd displayName 
objectClass
lsc.tasks.user.dstService.baseDn = ou=users
lsc.tasks.user.dstService.filterAll = (objectClass=user)
lsc.tasks.user.dstService.filterId = 
(&(objectClass=user)(sAMAccountName={loginname}))
lsc.tasks.user.dstService.pivotAttrs = samaccountname

lsc.tasks.user.srcService = org.lsc.jndi.SimpleJndiSrcService
lsc.tasks.user.srcService.attrs = uid cn mail telephoneNumber loginName 
lsc.tasks.user.srcService.baseDn = ou=People
lsc.tasks.user.srcService.filterAll = (objectClass=Person)
lsc.tasks.user.srcService.filterId = 
(&(objectClass=Person)(loginName={samaccountname}))
lsc.tasks.user.srcService.pivotAttrs = loginname
</pre>

LSC shows errors as:
<pre>
     [java] 212  [main] ERROR  
org.lsc.AbstractSynchronize.synchronize2Ldap(AbstractSynchronize.java:303)   - 
Unable to get object for id=uid=1A5AF9F102F8DB315D776F,ou=People,o=linagora=null
     [java] 219  [main] ERROR  
org.lsc.AbstractSynchronize.synchronize2Ldap(AbstractSynchronize.java:303)   - 
Unable to get object for id=uid=1A5AF9F102F8DB315D776E,ou=People,o=linagora=null
</pre>

And OpenLDAP (source) shows:
<pre>
conn=21 op=33 SRCH base="ou=People,o=linagora" scope=2 deref=0 
filter="(&(objectClass=Person)(loginName={samaccountname}))"
conn=21 op=33 SRCH attr=uid cn mail telephonenumber loginname
<= bdb_equality_candidates: (loginName) not indexed
conn=21 op=33 SEARCH RESULT tag=101 err=0 nentries=0 text=
</pre>


The synchronization works great with "uid" as source and destination pivotAttrs


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://tools.lsc-project.org/my/account
_______________________________________________________________
Ldap Synchronization Connector (LSC) - http://lsc-project.org

lsc-dev mailing list
[email protected]
http://lists.lsc-project.org/listinfo/lsc-dev

Reply via email to