Skip to main content
SQLite sync replicates a device’s application SQLite database to the platform: Omega installs change-capture triggers on the tables you name, batches the changes, and ships them over MQTT. This page is the device side — enabling the module and writing its config. For the connection, TLS, and enrollment that every device needs, see Configure and Connect.

1. Build

SQLite replication is a core dependency — always compiled, nothing to enable at build time. Any build has it, including a slimmed --no-default-features SKU:
See Build Omega for the full feature model.

2. Enable the module

In the profile, list the module and grant its capability. The module id and the capability key are the same string, sqlite-replication:
Both are required. A module without a matching capability grant has its control messages rejected; a capability the build doesn’t provide is fatal at load. The module has no dependencies on other modules.

3. Point it at the database

Add a sqlite-replication: section. The only required field is the path to your application’s SQLite file:
Omega installs its capture triggers on the named tables at startup and begins replicating.

Config reference

The full sqlite-replication: section:

table_strategies.<table>

See Capture strategies for choosing between rows and telemetry.

Batching and large changes

Omega batches changes and publishes them on the sync topics (see Topics and connection). Two things worth knowing:
  • Payload size is bounded by security.max_payload_bytes, not a replication setting. A batch that would exceed the cap is spilled to a compressed (zstd) secondary object, uploaded out-of-band via a platform-granted URL, rather than being forced onto a single MQTT message.
  • Deduplication is handled on the platform. The device stamps each batch with the keys the platform needs to dedupe; there’s no device-side dedup knob.

A complete example

Per-device values pulled from the environment so one profile serves a fleet:
Validate it, then run or install as a service:

First-batch schema review

The first batch for a new table lands as a queued schema review on the platform — approve it once and replication proceeds. See Schema review workflow.