Comments (5)
The most important thing is accurate synchronization. Anything to do in order to achieve this is accepted. At the moment, I'm just testing different situations to ensure it works smoothly before I use it in production.
from dotmim.sync.
Yep, i'm actually working on it :)
from dotmim.sync.
Thanks for this feedback.
I can reproduce this behavior and the bug is identified.
When the sync is over, a timestamp is updated in the master database.
This Timestamp contains the end of the sync process, and the next rows will be selected based on this timestamp, so far.
To resolve it, I will introduce a breaking changes for the next version:
Instead of updating the master database with the end of sync timestamp, I will update the master database with the begin of sync timestamp and then I will add a new column showing the total duration for the sync.
Why I didn't use this technic before ?
Because I used this end of sync timestamp as a kind of checkpoint: If we have such timestamp, we are sure the sync was finished, with no errors.
In the next version, having two columns (begin / end of sync) will be a little be more tricky, but I think it will be enough to guarantee the sync involved is finished (or not) without (or with) errors.
I'm actually work on this new behavior, expect a new version, very soon. But since it's a breaking changes, you will need to re-implement your whole sync architecture.
Is it making sense ? Are you just testing (in this case, breaking changes are not an issue) ?
Sebastien
from dotmim.sync.
Is there any progress?
from dotmim.sync.
hey @marjanoh2
Can you make a test with the last version 0.2.1 ?
Be careful, I changed a lot of things in the architecture of the sync process. Even the sync_scope table has changed.
You will have to make a test on a new database (Unprovision everything to be sure)
from dotmim.sync.
Related Issues (20)
- Column name error HOT 6
- agent.LocalOrchestrator.OnRowsChangesApplied called twice. HOT 3
- OutOfMemory exception when syncing huge tables for the first time HOT 14
- Insert in table with IDENTITY field fails HOT 13
- Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_0900_ai_ci,IMPLICIT) HOT 5
- .net8 ? HOT 3
- DeleteMetadataAsync Not related with ScopeName
- The base table and the tracing table use different character set for the primary key, which greatly reduces the query performance HOT 5
- OnApplyChangesFailed method does not exist HOT 1
- .Net Standard 2.1 for use with Unity? HOT 9
- Upgrade 0.9.4 => 0.9.8. What to do with WebServerOrchestrator.OnTableChangesApplying & OnTableChangesSelected for setting/removing UserId HOT 1
- Can the last modified date be used globally to resolve conflicts? HOT 1
- logging HOT 1
- Unexpected end when deserializing array HOT 2
- ArgumentOutOfRangeException during sync. HOT 2
- Provisioning and Deprovisioning HOT 2
- Restoring SQL Server backup and sync
- Force sync in particular direction regardless? HOT 2
- SynchronousProgress<T> in WinUI 3/AppSdk app: The send method is not supported, use Post instead. HOT 1
- SQLLocalDB Supported? HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dotmim.sync.