GSoC 2015 : Week 5

This post is regarding the work done in the fifth week of the GSoC coding period. To know more details about the project follow the Introduction link.

It’s time for the midterm evaluation and I am running as per my timeline..! So I need not worry about it. 😛

This week I added some new features to the replicator and modified the code written for the couchdb-client, mostly involving removal of unnecessary commits and addition of tests, in order to make it suitable for pull request. The PR is yet to be merged and can be seen by following link [1].

Last week I had experimented on the streaming docs with attachments. This week I added the logic to the couchdb-client as a new MultipartClient which reads data from the source in chunks, processes it and transfers it to the client with desired modifications. It’s not very general now and supports only streaming the multipart  response from the source to the target. It will be modified as per the feedback of the maintainer of the couchdb-client and it will be done after I get the first set of changes merged. The multipart client and other set of related changes to use the MultipartClient can be seen by following the link [2].

The replicator now supports the continuous replication, which means that once a replication has been started started, the replicator-source and replicator-target connections will not end after the set of changes has been transferred. They will remain connected  and as soon as any change involving insertion, deletion or modification happens at the source, it will be transferred to the target. It has two variants, first where the replication never stops and a periodic heartbeat is sent continuously and the second where a max timeout can be set for waiting to close the connection before sending the response. Currently only the source-replicator connection remains opened.  The changes to support this can be seen by following the links in [3].

Now in the current week, I don’t plan to add any new features or to start the Drupal related part with writing Drush plugin. I will be mostly writing tests which my mentor greatly emphasizes upon 😛 , for the client and replicator. Also making changes to the client for the PR is another thing that I will work upon.

Links:

  1. couchdb-client/pull/42
  2. couchdb-client/tree/trying_generators/lib/Doctrine/CouchDB
    1. replicator: couchdb-replicator/tree/continuous_replication  ,
    2. client: couchdb-client/tree/continuous_replication/lib/Doctrine/CouchDB

2 thoughts on “GSoC 2015 : Week 5

  1. @abhishek ..all ur projects in GSC are truly stupendous.😃 ALL THE BEST
    …if possible plz post me ur Facebook/e -mail contact as I would like to know more about Google summer code ..how to choose mentors..etc. And wish u good luck again….
    Keerthi

    Like

  2. @Keerthi : Hi..! abhi170893 is my gmail id.
    Thanks..! And all the posts are about a single project that i am doing under GSoC 2015.
    For knowing about the application process of GSoC, you can find some great blogs or Quora answers by the earlier participants. Just Google it. I would be glad to be of any further help.

    Like

Leave a comment