[ https://issues.apache.org/jira/browse/SYNCOPE-855?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15298258#comment-15298258 ]
ASF subversion and git services commented on SYNCOPE-855: --------------------------------------------------------- Commit 6a0a6ffb3dae2cae57679f278d965be0d65d0e30 in syncope's branch refs/heads/master from [~ilgrosso] [ https://git-wip-us.apache.org/repos/asf?p=syncope.git;h=6a0a6ff ] [SYNCOPE-855] SyncToken management now more in line with ConnId's semantics > 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)