davisp commented on issue #470: Scheduling Replicator
URL: https://github.com/apache/couchdb/pull/470#issuecomment-293084277
 
 
   Alright. Done for the day. I'm pretty sure I've got all the major bits paged 
into my brain. Everything seems pretty good. There are only two bits that we 
should think about a bit harder.
   
   The HTTP handlers are a bit futzy. They currently aren't using fabirc/rexi 
style RPC and instead just use builtin Erlang RPC which is a bit of an odd 
departure from our standard approach to clustered HTTP requests. Also for the 
doc listing API its odd that we kind of just shove the lists out separately 
into a weirdly combined single view like output. Also any sort of skip is going 
to be rather non-performant so paging through our thousands of active 
replications concern is going to be ungood. I'd like to see this as a module 
using our standard fabric/rexi approach that is smart about paging and 
streaming results.
   
   The doc processor architecture is a bit Rube Goldberg-ian. I can see why its 
that way given how all of the odd replication features kind of collide. User 
filter functions being the obvious complicating factor there.  I don't 
immediately see a better approach though given that the scheduler expects to 
have a replication_id before we tell it to do anything and that seems fairly 
legit. I'l stew on this overnight in case anything occurs to me.
   
   Tomorrow I'm gonna write up a description/overview of the couch_replicator 
app as a check that my understanding matches everyone elses. And if so we can 
add that as a README in the application folder. Once I'm done there I'll 
actually pull and compile and run the test suite though I'm assuming that's 
already happened quite a lot but I'll also look at coverage and consider any 
tests that should be added for anything that's lacking significant coverage and 
is non-trivial.
   
   Awesome work on this everyone!
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to