[ 
https://issues.apache.org/jira/browse/SYNCOPE-855?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15288645#comment-15288645
 ] 

Francesco Chicchiriccò commented on SYNCOPE-855:
------------------------------------------------

Some ConnId connector bundles require adjustment to behave correctly:
 * https://connid.atlassian.net/browse/AD-55
 * https://connid.atlassian.net/browse/CSVDIR-14

> Synchronization token management enhancement in case of errors
> --------------------------------------------------------------
>
>                 Key: SYNCOPE-855
>                 URL: https://issues.apache.org/jira/browse/SYNCOPE-855
>             Project: Syncope
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.2.7, 2.0.0-M2
>            Reporter: Francesco Chicchiriccò
>            Assignee: Francesco Chicchiriccò
>             Fix For: 1.2.8, 2.0.0
>
>
> The overall logic of the synchronization (1.2) / incremental pull (2.0) 
> process can be summarized as:
>  # invoke underlying connector's {{getLatestSyncToken}}
>  # invoke underlying connector's {{sync}}
>  # store the value for {{getLatestSyncToken}} for subsequent invocation
> As a consequence, when one synchronizing item ({{SyncDelta}}) generates an 
> error, the whole process might be interrupted without saving the updated sync 
> token, and next invocation will start again from the beginning, without 
> considering the successful items passed before the error occurred.
> The process should be changed as follows, instead:
>  # invoke underlying connector's {{getLatestSyncToken}}
>  # invoke underlying connector's {{sync}}: for each {{SyncDelta}}, temporary 
> store the related {{syncToken}} field;
>  # store the last successful item's {{syncToken}} value - or 
> {{getLatestSyncToken}} if no error occurred - for subsequent invocation



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to