Data flow
Overview of the data flow during synchronization process
Synchronization start
This phase is optional based on events the App subscribes to.
Status: Preparing
Data preparation
This is the internal phase.
Status: Preparing
Apps engine gathers the data required for the synchronization process.
This process can take some time. Its length depends on the amount of data to process and the cache size needed to be built.
Most usually it'll be the longest on the first run of the synchronization and significantly shorter on the following one, even if it is the same full synchronization.
Planning
This is the internal phase.
Status: Preparing
In this phase synchronization plan is created resulting in entries in the history created and put in Planned
status.
Attributes synchronization
This phase is optional based on events the App subscribes to.
Status: Execution
Firstly, as Attributes are the base of the Ergonode data model, their data is synchronized.
Categories synchronization
This phase is optional based on events the App subscribes to.
Status: Execution
As a second Categories data is delivered to an App.
Products synchronization
This phase is optional based on events the App subscribes to.
Status: Execution
As products utilize all of the previously synchronized resources they are the last ones to be sent.
Products relations synchronization
This phase is optional based on events the App subscribes to.
Status: Execution
Lastly, relation data is being sent - variants, children assignment, and product relation attribute values.
This is to avoid circular reference problems where product A depends on B and B on A - all the products should exist in this phase already.
Relations payloads are always provided with product_updated
events.
Synchronization end
This phase is optional based on events the App subscribes to.
Status: Finished
Last updated