Issue #145 has been updated by Jonathan Clarke.

A simple workaround is to add a unique value as the first field from the 
SELECT, that won't actually be used for synchronization, like this:
<pre>
SELECT CONCAT(first_name, last_name), first_name AS givenName, last_name AS sn 
FROM people
</pre>

This is just a workaround of course. A proper fix is coming.
----------------------------------------
Bug #145: db2ldap synchronizations with multiple pivot attributes don't handle 
all entries
http://tools.lsc-project.org/issues/show/145

Author: Jonathan Clarke
Status: New
Priority: High
Assigned to: Jonathan Clarke
Category: Core
Target version: 1.1.2


In a db2ldap synchronization that uses multiple pivots, only one entry is 
considered for each value of the first pivot attribute.

If you have a SQL request to get the list of entries, like getPersonList:
<pre>
SELECT first_name AS givenName, last_name AS sn FROM people
</pre>

And table people contains:
|_.first_name|_.last_name|
|John|Smith|
|John|Cleese|
|Andrew|Forest|
|Peter|Smith|

Then the map used internally by LSC in AbstractJdbcService.getListPivots() uses 
the first value only as a key. As a result, the map will contain:
|_.Key|_.Value|
|John|givenName=John, sn=Cleese|
|Andrew|givenName=Andrew, sn=Forest|
|Peter|givenName=Peter, sn=Smith|

The first entry, "John Smith" is missing. This is because it would have been 
stored using the same key, "John", as the next entry. As a result this entry is 
never synchronized!


-- 
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