Entity Re-Imports All Rows on Every Sync
Issue
An entity with SAP delta tracking re-imports all its rows on every sync and never switches to incremental sync. In SAP transaction ODQMON, the subscription of the entity shows a new initial load after each sync instead of delta requests.
Environment
Connector: SAP OData
Resolution
To resolve this issue:
- In transaction
SNOTE, check whether your SAP system contains the correction from SAP Note 3062232, either as an implemented note or through its support package. If it doesn't, implement the note and its prerequisite notes. For more information, see the setup guide prerequisites. - Confirm that only the connection uses its SAP user. In transaction
ODQMON, check the requests for the affected service. Initial loads that don't match the sync times of the connection come from another client that uses the same SAP user, such as an API test tool, a script, or another connection. Give the connection a dedicated SAP user, or move the other client to a different user.
No re-sync is required. After you apply the changes in SAP, the next sync re-imports the entity and starts a new initial load in ODQMON. The last page of that initial load contains a delta token, and subsequent syncs are incremental.
If you connect to SAP S/4HANA Cloud Public Edition, these steps don't apply because we don't support that edition. For more information, see Limitations.
Cause
An entity switches to incremental sync only when the last page of its initial load contains a delta token. This issue occurs for one of the following reasons:
- The SAP system omits the delta token from the last page of a multi-page initial load. SAP Note 3062232 corrects this behavior.
- Another client starts an initial load on the same service with the same SAP user. SAP keeps one ODP subscription per service and user, so the new initial load replaces the subscription of the connection and invalidates its delta token.
- You connect to SAP S/4HANA Cloud Public Edition. We don't support that edition, and entities from it can't switch to incremental sync.