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

ASF subversion and git services commented on SYNCOPE-855:
---------------------------------------------------------

Commit e71fce0a268af61f401a2c3e6ddf92beba787b1a in syncope's branch 
refs/heads/1_2_X from [~ilgrosso]
[ https://git-wip-us.apache.org/repos/asf?p=syncope.git;h=e71fce0 ]

[SYNCOPE-855] More robust testing


> 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