Skip to content

Switch to NoSQL with server sync capabilities #721

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

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

Switch to NoSQL with server sync capabilities #721

mvysny opened this issue Dec 27, 2016 · 2 comments
Assignees

Comments

@mvysny
Copy link
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: https://github.com/couchbase/couchbase-lite-java-core/issues/1536 https://github.com/couchbase/couchbase-lite-java-core/issues/1533
https://github.com/couchbase/couchbase-lite-core/issues/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
Copy link
Owner Author

mvysny commented Jan 26, 2017

Implemented in Aedict Online and Aedict 3.39.28

@mvysny mvysny closed this as completed Jan 26, 2017
@mvysny
Copy link
Owner Author

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
Projects
None yet
Development

No branches or pull requests

1 participant