Hi we are testing LiteSync for a new project.
I was almost at the checkout but i discovered a big problem for me.
I've created a star topology with a central primary node (X) and 3 secondary (A B and C),
Client A and B are created from the beginning
Client A is the only responsible for database modifications, (the server is "passive" from this point of view)
Client B is online and in sync from the first execution
Client A updates 28K records and his database grows to 5,6 Mb
Client B receives the sync and the database have the same size of A.
Client A overwrites all 28K records with a minimal increase in database size
but server X grows to 27 Mb from the initial 5,6Mb
if client A continues to overwrite only the server DB grows a lot
i can understand that a server needs to hold a bigger log of modifications and i can live with that for now.
The problem rises when the third client (C) connects for the first time,
because it start a slow process of download (monitored by me with PRAGMA sync_status)
and the database size of client C after the slow sync is the same size of the server 27Mb.
This means that every new client that will connect to this network will get a greater database size (the same of the server) but with the same 28k rows data of the older clients that holds a smaller one.
Why this is happening ?
The server is supposed to live for a long time, and maybe the db will grow really large because of the frequent updates from client A
this example is only from 1 round of update of a single table with demo data, in production we will have many tables with a lot of rows constantly updated by client A.
Waiting for an answer,
best regards