summaryrefslogtreecommitdiff
path: root/docs/reference/blobs/sync.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/reference/blobs/sync.rst')
-rw-r--r--docs/reference/blobs/sync.rst19
1 files changed, 14 insertions, 5 deletions
diff --git a/docs/reference/blobs/sync.rst b/docs/reference/blobs/sync.rst
index bdfad0cf..93fb7cb0 100644
--- a/docs/reference/blobs/sync.rst
+++ b/docs/reference/blobs/sync.rst
@@ -1,3 +1,5 @@
+.. _blobs-sync:
+
Blobs Synchronization
=====================
@@ -5,7 +7,7 @@ Because blobs are immutable, synchronization is much simpler than the
JSON-based :ref:`document-sync`. The synchronization process is as follows:
1. The client asks the server for a list of Blobs and compares it with the local list.
-2. A local list is updated with pending blobs download and upload.
+2. A local list is updated with pending downloads and uploads.
3. Downloads and uploads are triggered.
Immutability brings some characteristics to the blobs system:
@@ -13,11 +15,18 @@ Immutability brings some characteristics to the blobs system:
- There's no need for storage of versions or revisions.
- Updating is not possible (you would need to delete and recreate a blob).
+Client-side encryption
+----------------------
+
+Blobs are encrypted before being sent to the server and decrypted after being
+received. A MAC is also calculated to authenticate the contents of each blob.
+See :ref:`client-encryption` for more details of how this is done.
+
Synchronization status
----------------------
-In the client-side, each has an associated synchronization status, which can be
-one of:
+In the client-side, each blob has an associated synchronization status, which
+can be one of:
- ``SYNCED``: The blob exists both in this client and in the server.
- ``PENDING_UPLOAD``: The blob was inserted locally, but has not yet been uploaded.
@@ -29,8 +38,8 @@ Concurrency limits
In order to increase the speed of synchronization on the client-size,
concurrent database operations and transfers to the server are allowed. Despite
-that, to prevent indiscriminated use or client resources (cpu, memory,
-bandwith), concurrenty limits are set both for database operations and for data
+that, to prevent indiscriminated use of client resources (cpu, memory,
+bandwith), concurrenty limits are set both for database operations and data
transfer.
Transfer retries