Changes

Sync Manager

3,155 bytes added, Yesterday at 11:30
/* Automatic Merging */
== Automatic Merging ==
tbdThe Sync Manager automatically combines related entries so that the list stays short and every problem is only listed once. === One entry per operation and object ===An entry is identified by its operation type and the affected object(s). If an operation fails that is already listed, the existing entry is updated instead of creating a new one (see [[#Repeated failures|Repeated failures]]). This also applies to the automatic retries the client performs internally, which means that a single failed action results in exactly one entry. The following rules apply when comparing entries:* The order of the affected objects does not matter; e.g. a failed commit of the objects ''A, B'' and a failed commit of ''B, A'' result in one entry.* A failed '''check-out''' and a failed '''release''' of the same object are separate entries.* A failed '''file upload''' is only merged with another entry if both refer to the same object and the same file. In addition, the Sync Manager regularly checks the lists for duplicates and keeps only the most recent one. Two entries count as duplicates if their operation type, affected object(s), called web service and error message are identical. === Partially resolved entries ===Some entries refer to several objects at once: commits, check-outs / releases and live value updates. If some of these objects are synchronized successfully later on (e.g. by committing one of the objects again), they are removed from the existing entry and its location is updated. The entry only disappears once all of its objects have been synchronized successfully. ''Example:'' A commit of the objects ''A'' and ''B'' fails. Later, only ''A'' is committed successfully. The entry remains and only refers to ''B''. === Failed documents of a branch download ===Failed document downloads that belong to a branch download are grouped under the corresponding branch entry instead of being listed individually (see [[#Failed documents of a branch download|Failed documents of a branch download]]). Once all of these documents have been downloaded successfully, the branch entry is removed as well. === Combined retry ===When several entries are retried together (''Retry Selected''), operations of the same kind are combined:{| class="wikitable"! Selected entries !! Executed as|-| Several failed commits || One single commit containing all affected objects|-| Several failed check-outs / releases || One check-out request and one release request, each containing all affected objects|-| Several failed live value updates || One live value request containing all affected values|-| Several branch downloads, document downloads/uploads or object updates || One request per affected object; objects selected multiple times are only processed once|} The entries are then updated individually depending on the result, i.e. entries that were synchronized successfully are removed, while entries that still fail remain in the list. {{Hint|Reporting is '''not''' merged: All selected entries are sent to the server in one single request, but each entry keeps its own details (location, error message, web service call).}} 
== Uncommitted Changes ==
794
edits