Awesome, Johannes! Looks like my protocol definition even works (: Have you found any issues or some missing, incorrect, unclear, weird and others things in the doc during implementation? Except your comments on github - I'm keeping them in mind, don't worry about.
Also, you might be interested in two last commits: https://github.com/apache/couchdb/commit/1d5fe2aa https://github.com/apache/couchdb/commit/0693f98e I didn't covered checkpoints routines (like also filtered replications) in my doc. Will fix it soon. Currently, I'm working on special peer that will acts as test suite (hi, Benjamin!) and provide logs to easy found incompatibilities in replicator's implementations, so should be easy to test and compare all the implementations. Stay tuned! (: -- ,,,^..^,,, On Wed, Nov 27, 2013 at 9:09 PM, Johannes Jörg Schmidt <[email protected]> wrote: > Dear devs, > > First of all I would like to thank Alexander Shorin for his detailed > description of the replication algorithm, see [1][2]. > > The timing was outstanding: I was working on a JavaScript > implementation of the replication algorithm with the goal to better > understand how replication works. > I started off by following Jens Alfkes Replication Algorithm > description [3]. Now I have reworked the code based on Alexander > Shorins work with a strong focus on readability and testability: > > https://github.com/jo/roy-replicator > > Its not optimised yet and there are a plenty of unresolved issues [4]. > But I would love to hear some feedback about what to avoid and which > issues I haven't thought of. > > Greetings > Johannes > > [1] http://kxepal.iriscouch.com/docs/dev/replication/protocol.html > [2] https://github.com/apache/couchdb/tree/1824-replication-protocol > [3] https://github.com/couchbaselabs/TouchDB-iOS/wiki/Replication-Algorithm > [4] https://github.com/jo/roy-replicator/issues
