New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to NoSQL with server sync capabilities #721

Closed
mvysny opened this Issue Dec 27, 2016 · 2 comments

Comments

Projects
None yet
1 participant
@mvysny
Owner

mvysny commented Dec 27, 2016

Currently Aedict's way of storing data is really REALLY old and crappy, you can read about this more here: https://www.patreon.com/posts/true-cloud-7533022

So, the logical solution is to move to NoSQL databases with server sync capabilities. Possible solutions are:

  1. CouchBase Lite
  2. https://github.com/couchbaselabs/TouchDB-Android - deprecated and they moved to CouchBase so goto 1
  3. http://www.iboxdb.com/ - interesting, but the sync looks weird, I'm not sure whether the sync works over a TCP/IP connection

The problem with CouchBase is that the ForestDB engine is untested and buggy: couchbase/couchbase-lite-java-core#1536 couchbase/couchbase-lite-java-core#1533
couchbase/couchbase-lite-core#42

I'm not sure whether I wish to use the SQLite engine - it's slower and it's getting replaced by the ForestDB engine.

@mvysny

This comment has been minimized.

Show comment
Hide comment
@mvysny

mvysny Jan 26, 2017

Owner

Implemented in Aedict Online and Aedict 3.39.28

Owner

mvysny commented Jan 26, 2017

Implemented in Aedict Online and Aedict 3.39.28

@mvysny mvysny closed this Jan 26, 2017

@mvysny

This comment has been minimized.

Show comment
Hide comment
@mvysny

mvysny Jan 28, 2017

Owner

Please read https://www.patreon.com/posts/aedict-online-on-7838397 and https://www.patreon.com/posts/its-done-and-out-7893290 for more information for more information about how it works and how to enable it.

Basically, the sync now works in scope of individual notepad entries: every notepad line now has an ID - if that line is deleted, the delete is propagated to all devices. It is a huge improvement over previous backup/restore style which would simply zip entire notepad and overwrite anything you had on your device.

Owner

mvysny commented Jan 28, 2017

Please read https://www.patreon.com/posts/aedict-online-on-7838397 and https://www.patreon.com/posts/its-done-and-out-7893290 for more information for more information about how it works and how to enable it.

Basically, the sync now works in scope of individual notepad entries: every notepad line now has an ID - if that line is deleted, the delete is propagated to all devices. It is a huge improvement over previous backup/restore style which would simply zip entire notepad and overwrite anything you had on your device.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment