couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexander Shorin <kxe...@gmail.com>
Subject Re: GSoc 2015 | COUCHDB-1743 Make the view server & protocol faster
Date Wed, 25 Mar 2015 13:03:51 GMT
Hi Buddhika,

The plan looks good for me, but I miss there one important moment.

It goes with a title "Make the View Server & protocol faster" and
below the implementation discussion goes, but there is no word about
"prove that it's really faster". The one of your work result might
happen that performance wouldn't be significantly improved. But to see
that, we need to make a benchmark first. A tool, that will say in the
end "yes, the protocol and view server" became faster. Or at least not
slower.

I'm also sceptical about bringing NodeJS as runtime dependency pushing
SpiderMonkey away, since NodeJS now is in not very stable position:
should we care about io.js? What if they decide to break backward
compatibility at some point? There are no reasons to throw away
SpiderMonkey and there was only one that cause the pain to us is a
breaking change in the way how anonymous functions are handled in the
newer version. Speaking of the speed, both V8 and SpiderMonkey are
equivalent more or less.

Jan, have you thought about that decision good? For me it doubtful.
--
,,,^..^,,,


On Tue, Mar 24, 2015 at 7:44 PM, Buddhika Jayawardhana
<buddhika.12@cse.mrt.ac.lk> wrote:
> I changed the testing method to TDD as Robert suggested. Also I changed the
> schedule in to a weekly based one. I would like to have your comments on
> time allocation for each task. Here is the link
> <https://docs.google.com/document/d/1Yrj73vXAJjBA0-i_Nt78FUipy5oTtZ42UG2TlXmH4y0/edit?usp=sharing>
> for the proposal.
>
> On 24 March 2015 at 07:40, Buddhika Jayawardhana <buddhika.12@cse.mrt.ac.lk>
> wrote:
>
>> Dear Robert and Alexander,
>>
>> Thanks for your suggestions.
>> Robert,
>> Yes I was thinking about a good, simple way to represent the schedule. My
>> idea was to draw a chart which shows the time allocation with a range of
>> dates and hourly basis.
>> eg:
>> Implementing show function handler
>>
>> Duration: May 10 to 30
>> Designing :10 hours.
>> Implementation :100 hours
>> Testing : 30 hours
>>
>> likewise. Is that ok? I thought that it might help me to divide the time
>> among tasks easily although those are rough estimates. As you advised I
>> will be writing test cases for every bit of function. I will complete this
>> before 20 UTC todya(Because I got some lectures today). And I will let you
>> know when I am done.
>>
>>
>> Again Thanks for spending time for read the proposal.
>>
>> On 24 March 2015 at 06:23, Robert Kowalski <rok@kowalski.gd> wrote:
>>
>>> Looks good! Left some suggestions!
>>>
>>> Are you going to complete the schedule?
>>>
>>> I just noticed that you have a special section for testing, from my
>>> experience I can suggest to add unit tests while you develop the
>>> feature, as adding tests weeks or months later to a big, grown
>>> codebase is not a lot of fun and also very hard (maybe even not
>>> possible because the code was written untestable weeks ago). At least
>>> that are my experiences with testing.
>>>
>>> On Mon, Mar 23, 2015 at 5:15 PM, Buddhika Jayawardhana
>>> <buddhika.12@cse.mrt.ac.lk> wrote:
>>> > Dear Folks,
>>> >
>>> > I have prepared a draft proposal  for the project based on what I have
>>> read
>>> > so far.
>>> >
>>> > How deep I should explain the technical details of the project?
>>> > Is the software process which I have suggested is ok? or should I use
>>> any
>>> > other process?
>>> >
>>> > This is the link
>>> > <
>>> https://docs.google.com/document/d/1Yrj73vXAJjBA0-i_Nt78FUipy5oTtZ42UG2TlXmH4y0/edit?usp=sharing
>>> >
>>> > for the proposal. Please be kind enough to add your comments on the
>>> > proposal.
>>> >
>>> > Thank You
>>> >
>>> >
>>> > On 22 March 2015 at 10:24, Buddhika Jayawardhana <
>>> buddhika.12@cse.mrt.ac.lk>
>>> > wrote:
>>> >
>>> >> Dear Jan, Robert other devs,
>>> >>
>>> >> I have prepared a draft proposal for the project. It can be found on
>>> this
>>> >> link
>>> >> <
>>> https://docs.google.com/a/cse.mrt.ac.lk/document/d/1Yrj73vXAJjBA0-i_Nt78FUipy5oTtZ42UG2TlXmH4y0/edit?usp=sharing
>>> >.
>>> >> It is neither complete nor contain much technical details. It is
>>> completely
>>> >> based on what you have told me and what I have read so far. Please add
>>> your
>>> >> comments to improve the proposal and point me out if I have
>>> misunderstood
>>> >> anything you have told me or about the project.
>>> >>
>>> >> I think I need a deep understanding on stdio. Please point me some
>>> >> direction to learn them.
>>> >>
>>> >> Thank You.
>>> >>
>>> >> On 21 March 2015 at 22:16, Buddhika Jayawardhana <
>>> >> buddhika.12@cse.mrt.ac.lk> wrote:
>>> >>
>>> >>> Thank You Robert, I already have started  writing the proposal.
I will
>>> >>> share the link of the google doc tomorrow morning.
>>> >>>
>>> >>> On 21 March 2015 at 21:08, Robert Kowalski <rok@kowalski.gd>
wrote:
>>> >>>
>>> >>>> Hi Buddhika,
>>> >>>>
>>> >>>> no worries - the preparation for each GSoC project is different
for
>>> >>>> every student. Some projects need more background knowledge
in
>>> advance
>>> >>>> and have to integrate in other way into the codebase, so don't
worry
>>> >>>> that other folks are submitting code!
>>> >>>>
>>> >>>> I would suggest to start writing the proposal as far as you
can, we
>>> >>>> will also give you feedback. The deadline is for submissions
is soon.
>>> >>>>
>>> >>>> I tried to write up some tips for writing the two sections you
are
>>> >>>> worried about:
>>> >>>>
>>> >>>> For the "background" section you can just rely on the informations
>>> the
>>> >>>> community provides plus the background information you gained
from
>>> >>>> reading the docs (e.g. the current QueryServer protocol [1],
the way
>>> >>>> the QueryServer operates today and more general informations,
like
>>> how
>>> >>>> you query CouchDB and how you are writing views) - so no worries!
>>> >>>>
>>> >>>> Regarding the design/description: Jan already gave some suggestions
>>> >>>> regarding the steps that are needed. Are there steps missing
in
>>> >>>> between? How do you measure the success of the project? How
do you
>>> >>>> plan to work together with Jan & the community? Also describe
how you
>>> >>>> going to work: are you planning to work iterative, waterfall,
using
>>> >>>> techniques like test-driven-development, by building a prototype
etc?
>>> >>>>
>>> >>>> I hope I could provide some hints!
>>> >>>>
>>> >>>>
>>> >>>> [1] http://docs.couchdb.org/en/1.6.1/query-server/protocol.html
>>> >>>>
>>> >>>> On Sat, Mar 21, 2015 at 6:58 AM, Buddhika Jayawardhana
>>> >>>> <buddhika.12@cse.mrt.ac.lk> wrote:
>>> >>>> > Hi Robert,
>>> >>>> >
>>> >>>> > I I saw some other applicants are submitting pieces of
codes. But
>>> I am
>>> >>>> > still reading the documents Jan and others have sent me.
>>> >>>> >
>>> >>>> >
>>> >>>> >    - I am middle of learnYouSomeErlang book.
>>> >>>> >    - I have around 8 chapters to read in Couch-DB "The
Definitive
>>> >>>> Guide".
>>> >>>> >    - Lots of documentation.
>>> >>>> >    - Most of the source code.
>>> >>>> >
>>> >>>> >
>>> >>>> > I looked at the template that you have sent me and it requires
a
>>> >>>> > description about the current situation of the project.
And design/
>>> >>>> > description of the work.
>>> >>>> > I do not have any confidence to write those two paragraphs.
But I
>>> can
>>> >>>> start
>>> >>>> > to write the proposal based on the thinks that Jan have
>>> >>>> described(Though I
>>> >>>> > don't understand all of them). Shall I start that way?
or is there
>>> any
>>> >>>> > other better way.
>>> >>>> >
>>> >>>> > Waiting for your advices.
>>> >>>> >
>>> >>>> > On 21 March 2015 at 08:14, Robert Kowalski <rok@kowalski.gd>
>>> wrote:
>>> >>>> >
>>> >>>> >> Hi Buddhika,
>>> >>>> >>
>>> >>>> >> the deadline for proposals is getting closer, do you
have any
>>> >>>> >> questions? Is there anything we can help you with?
>>> >>>> >>
>>> >>>> >> Jan, the ML and I are happy to help!
>>> >>>> >>
>>> >>>> >> Best,
>>> >>>> >> Robert
>>> >>>> >>
>>> >>>> >> On Thu, Mar 19, 2015 at 1:57 PM, Buddhika Jayawardhana
>>> >>>> >> <buddhika.12@cse.mrt.ac.lk> wrote:
>>> >>>> >> > Thanks Alexander. I'll try this out.
>>> >>>> >> >
>>> >>>> >> > On 19 March 2015 at 16:59, Alexander Shorin <kxepal@gmail.com>
>>> >>>> wrote:
>>> >>>> >> >
>>> >>>> >> >> Hi Buddhika,
>>> >>>> >> >>
>>> >>>> >> >> May be some docs could help you:
>>> >>>> >> >> http://docs.couchdb.org/en/latest/query-server/protocol.html
>>> >>>> >> >>
>>> >>>> >> >> The most easiest way to understand it is to
play with it.
>>> >>>> >> >> Try to enable debug logs for CouchDB (better
here stay with 1.x
>>> >>>> >> >> series), run view and other functions and
see what the
>>> >>>> communication
>>> >>>> >> >> happens between CouchDB and query server.
>>> >>>> >> >> Try to run query server from CLI and send
it some commands to
>>> it
>>> >>>> and
>>> >>>> >> >> notice the responces.
>>> >>>> >> >> After that, reading the code would be much
more simpler since
>>> >>>> you'll
>>> >>>> >> >> know the idea how it works in general.
>>> >>>> >> >>
>>> >>>> >> >> --
>>> >>>> >> >> ,,,^..^,,,
>>> >>>> >> >>
>>> >>>> >> >>
>>> >>>> >> >> On Thu, Mar 19, 2015 at 2:24 PM, Buddhika
Jayawardhana
>>> >>>> >> >> <buddhika.12@cse.mrt.ac.lk> wrote:
>>> >>>> >> >> > Dear Jan,
>>> >>>> >> >> >
>>> >>>> >> >> > I tried to read the code you have sent
me to understand the
>>> >>>> current
>>> >>>> >> query
>>> >>>> >> >> > server protocol(https://github.com/apache/couchdb
>>> >>>> >> >> > /blob/master/test/view_server/query_server_spec.rb).
But I
>>> could
>>> >>>> not
>>> >>>> >> >> > understand anything :( . I'm stuck here.
Can you point me
>>> out a
>>> >>>> way to
>>> >>>> >> >> > understand the code. (At least a brief
explanation).
>>> >>>> >> >> >
>>> >>>> >> >> > Thanks.
>>> >>>> >> >> >
>>> >>>> >> >> > On 19 March 2015 at 10:28, Buddhika Jayawardhana
<
>>> >>>> >> >> buddhika.12@cse.mrt.ac.lk>
>>> >>>> >> >> > wrote:
>>> >>>> >> >> >
>>> >>>> >> >> >> Thanks Robert. This would be really
helpful.
>>> >>>> >> >> >>
>>> >>>> >> >> >> On 19 March 2015 at 03:20, Robert
Kowalski <rok@kowalski.gd
>>> >
>>> >>>> wrote:
>>> >>>> >> >> >>
>>> >>>> >> >> >>> Some of you asked for a template
for their proposals, here
>>> is
>>> >>>> what
>>> >>>> >> I've
>>> >>>> >> >> >>> found:
>>> >>>> >> >> >>>
>>> >>>> >> >> >>>
>>> http://community.staging.apache.org/gsoc#application-template
>>> >>>> >> >> >>>
>>> >>>> >> >> >>> Best,
>>> >>>> >> >> >>> Robert
>>> >>>> >> >> >>>
>>> >>>> >> >> >>> On Wed, Mar 18, 2015 at 1:49
PM, Jan Lehnardt <
>>> jan@apache.org>
>>> >>>> >> wrote:
>>> >>>> >> >> >>> >
>>> >>>> >> >> >>> >> On 18 Mar 2015, at 13:35,
Buddhika Jayawardhana <
>>> >>>> >> >> >>> buddhika.12@cse.mrt.ac.lk>
wrote:
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >> Dear Jan and Robert,
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >> It seems I have to do
a lot to get to the speed. I have
>>> to
>>> >>>> gain a
>>> >>>> >> >> lot
>>> >>>> >> >> >>> of
>>> >>>> >> >> >>> >> theorytical knowladge
in
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >>   - Erlang.
>>> >>>> >> >> >>> >>   - Query servers.
>>> >>>> >> >> >>> >>   - and about the source.
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >> But I am so exited to
learn new things. Currently I am
>>> >>>> reading
>>> >>>> >> >> >>> >> "learnsomeerlang" and
couch db documentation. This is my
>>> >>>> first
>>> >>>> >> >> attemp
>>> >>>> >> >> >>> to
>>> >>>> >> >> >>> >> get involve with a large
scale open source project and I
>>> >>>> need
>>> >>>> >> help
>>> >>>> >> >> to
>>> >>>> >> >> >>> >> clarify the source code.
I hope to meet you guys. Hope
>>> to
>>> >>>> meet
>>> >>>> >> you
>>> >>>> >> >> >>> guys at
>>> >>>> >> >> >>> >> the status meeting.
>>> >>>> >> >> >>> >
>>> >>>> >> >> >>> > Sounds good, we’re here
to help :) (we are not all guys,
>>> >>>> though)
>>> >>>> >> >> >>> >
>>> >>>> >> >> >>> > Best
>>> >>>> >> >> >>> > Jan
>>> >>>> >> >> >>> > --
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >> Regards.
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >> On 18 March 2015 at
03:51, Alexander Shorin <
>>> >>>> kxepal@gmail.com>
>>> >>>> >> >> wrote:
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >>> On Tue, Mar 17,
2015 at 12:28 AM, Jan Lehnardt <
>>> >>>> jan@apache.org>
>>> >>>> >> >> >>> wrote:
>>> >>>> >> >> >>> >>>> Here is how
I would start:
>>> >>>> >> >> >>> >>>
>>> >>>> >> >> >>> >>> I think you'd forgot
a point about protocol design
>>> itself.
>>> >>>> It
>>> >>>> >> >> requires
>>> >>>> >> >> >>> >>> in lot of changes.
And there is need to think hardly
>>> about
>>> >>>> is it
>>> >>>> >> >> good
>>> >>>> >> >> >>> >>> to stay with stdio
as a transport if we're going to
>>> make
>>> >>>> it work
>>> >>>> >> >> for
>>> >>>> >> >> >>> >>> cluster and much
parallel as it is now. Just
>>> >>>> reimplementation of
>>> >>>> >> >> what
>>> >>>> >> >> >>> >>> we have now is interesting,
but not very helpful in
>>> >>>> mid/long
>>> >>>> >> term.
>>> >>>> >> >> >>> >>>
>>> >>>> >> >> >>> >>> --
>>> >>>> >> >> >>> >>> ,,,^..^,,,
>>> >>>> >> >> >>> >>>
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >>
>>> >>>> >> >> >>> >> --
>>> >>>> >> >> >>> >> *Buddhika Jayawardhana*
>>> >>>> >> >> >>> >> Undergraduate | Department
of Computer Science &
>>> Engineering
>>> >>>> >> >> >>> >> University of Moratuwa
>>> >>>> >> >> >>> >> *buddhika.12@cse.mrt.ac.lk
<buddhika.12@cse.mrt.ac.lk>*
>>> |
>>> >>>> >> LinkedIn
>>> >>>> >> >> >>> >> <http://lk.linkedin.com/in/buddhikajay/>
>>> >>>> >> >> >>> >
>>> >>>> >> >> >>> > --
>>> >>>> >> >> >>> > Professional Support for
Apache CouchDB:
>>> >>>> >> >> >>> > http://www.neighbourhood.ie/couchdb-support/
>>> >>>> >> >> >>> >
>>> >>>> >> >> >>>
>>> >>>> >> >> >>
>>> >>>> >> >> >>
>>> >>>> >> >> >>
>>> >>>> >> >> >> --
>>> >>>> >> >> >> *Buddhika Jayawardhana*
>>> >>>> >> >> >> Undergraduate | Department of Computer
Science & Engineering
>>> >>>> >> >> >> University of Moratuwa
>>> >>>> >> >> >> *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>*
|
>>> >>>> LinkedIn
>>> >>>> >> >> >> <http://lk.linkedin.com/in/buddhikajay/>
>>> >>>> >> >> >>
>>> >>>> >> >> >
>>> >>>> >> >> >
>>> >>>> >> >> >
>>> >>>> >> >> > --
>>> >>>> >> >> > *Buddhika Jayawardhana*
>>> >>>> >> >> > Undergraduate | Department of Computer
Science & Engineering
>>> >>>> >> >> > University of Moratuwa
>>> >>>> >> >> > *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>*
|
>>> >>>> LinkedIn
>>> >>>> >> >> > <http://lk.linkedin.com/in/buddhikajay/>
>>> >>>> >> >>
>>> >>>> >> >
>>> >>>> >> >
>>> >>>> >> >
>>> >>>> >> > --
>>> >>>> >> > *Buddhika Jayawardhana*
>>> >>>> >> > Undergraduate | Department of Computer Science
& Engineering
>>> >>>> >> > University of Moratuwa
>>> >>>> >> > *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>*
|
>>> LinkedIn
>>> >>>> >> > <http://lk.linkedin.com/in/buddhikajay/>
>>> >>>> >>
>>> >>>> >
>>> >>>> >
>>> >>>> >
>>> >>>> > --
>>> >>>> > *Buddhika Jayawardhana*
>>> >>>> > Undergraduate | Department of Computer Science & Engineering
>>> >>>> > University of Moratuwa
>>> >>>> > *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>*
| LinkedIn
>>> >>>> > <http://lk.linkedin.com/in/buddhikajay/>
>>> >>>>
>>> >>>
>>> >>>
>>> >>>
>>> >>> --
>>> >>> *Buddhika Jayawardhana*
>>> >>> Undergraduate | Department of Computer Science & Engineering
>>> >>> University of Moratuwa
>>> >>> *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>* |
LinkedIn
>>> >>> <http://lk.linkedin.com/in/buddhikajay/>
>>> >>>
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> *Buddhika Jayawardhana*
>>> >> Undergraduate | Department of Computer Science & Engineering
>>> >> University of Moratuwa
>>> >> *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>* | LinkedIn
>>> >> <http://lk.linkedin.com/in/buddhikajay/>
>>> >>
>>> >
>>> >
>>> >
>>> > --
>>> > *Buddhika Jayawardhana*
>>> > Undergraduate | Department of Computer Science & Engineering
>>> > University of Moratuwa
>>> > *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>* | LinkedIn
>>> > <http://lk.linkedin.com/in/buddhikajay/>
>>>
>>
>>
>>
>> --
>> *Buddhika Jayawardhana*
>> Undergraduate | Department of Computer Science & Engineering
>> University of Moratuwa
>> *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>* | LinkedIn
>> <http://lk.linkedin.com/in/buddhikajay/>
>>
>
>
>
> --
> *Buddhika Jayawardhana*
> Undergraduate | Department of Computer Science & Engineering
> University of Moratuwa
> *buddhika.12@cse.mrt.ac.lk <buddhika.12@cse.mrt.ac.lk>* | LinkedIn
> <http://lk.linkedin.com/in/buddhikajay/>

Mime
View raw message