Sync interactions
Port can run more than one sync-related process for an integration at the same time. What happens depends on which action you trigger.
Port tracks the following as separate sync mechanisms for overlap purposes:
| Sync mechanism | Trigger |
|---|---|
| Full resync | Run full sync (scheduled or manual), or the first sync after installation. |
| Incremental sync | Automatic incremental run (supported integrations only, see Incremental sync) |
| Live events | Not triggered on demand - processes source changes in real time as they happen, via webhooks or source-specific watch APIs (see Live events) |
Apply mapping isn't a sync mechanism on its own - it's a partial full resync that skips fetching and reruns map and ingest on already-fetched data (see Sync by kind). Port still tracks it separately from a standard full resync for overlap purposes.
For monitoring status terms such as Aborted, Syncing, Synced, and Failed, see Monitoring and sync status.
Starting the same sync again
| Running sync | Started sync | Result |
|---|---|---|
| Full resync | Another full resync | Earlier run Aborted, new run starts. |
| Incremental sync | Another incremental sync | Earlier run Aborted, new run starts. |
| Apply mapping | Another apply mapping | Earlier run Aborted, new run starts. |
| Live events | Another live event | Both run simultaneously. A new live event does not interfere with one already running. |
Running a different sync mechanism at the same time
A new sync does not stop a running sync of a different mechanism. Both can run at the same time.
| Running sync | Started sync | Result |
|---|---|---|
| Incremental sync | Full resync | Both keep running. The full resync fetches the full dataset; you may see overlapping updates until both finish. |
| Full resync | Incremental sync | Both keep running. Updates to the same entity follow normal ingest order - the most recent update wins. |
| Full resync | Apply mapping | Apply mapping is disabled in the UI until the full resync finishes. |
| Apply mapping | Incremental sync (or the reverse) | Both keep running. Neither stops the other. |
| Apply mapping | Full resync | Both can be active. The apply-mapping run is not marked Aborted, but it stops applying further mapping changes once the full resync takes over. The UI may warn that a full sync will interrupt apply mapping. |
| Live events | Any sync mechanism | Both keep running. Live events do not interfere with any sync mechanism. See Live events behavior during a full resync below for how reconciliation treats entities updated by a live event. |
Live events behavior during a full resync
Live events continue while a full resync runs. When the full resync reaches reconciliation:
- Deletes: Port does not remove catalog entities that were updated by live events during that resync (or ingested as part of the resync). Reconciliation only removes entities that were already stale before the sync started and were not refreshed during it.
- Updates: If both a live event and the resync update the same entity, the later update is what remains in the catalog.
Incremental sync does not run reconciliation. For incremental sync and live events, only the usual ingest behavior applies - concurrent updates, with the latest change winning.