Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 32535 invoked from network); 19 Sep 2009 16:57:42 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 19 Sep 2009 16:57:42 -0000 Received: (qmail 82231 invoked by uid 500); 19 Sep 2009 16:57:41 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 82146 invoked by uid 500); 19 Sep 2009 16:57:41 -0000 Mailing-List: contact user-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@couchdb.apache.org Delivered-To: mailing list user@couchdb.apache.org Received: (qmail 82136 invoked by uid 99); 19 Sep 2009 16:57:40 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 19 Sep 2009 16:57:40 +0000 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jchris@gmail.com designates 209.85.212.171 as permitted sender) Received: from [209.85.212.171] (HELO mail-vw0-f171.google.com) (209.85.212.171) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 19 Sep 2009 16:57:29 +0000 Received: by vws1 with SMTP id 1so1403853vws.13 for ; Sat, 19 Sep 2009 09:57:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:message-id:subject:from:to :content-type; bh=QljPJ5mS3S+ZFzT1eqB+7CYwbFmPoS/7DQaX07GUJNc=; b=MYnONvrppLL47pj7ydTteybob2B18SRNu4NlwRirwQYTWH3yhtVO+kukuKl+RXJm6G DhCtGsPeaw8cN7T03tLaLiaEz+1tMzQXc2Ig6aMODyP7FFsqFract3CxYbhnsPRbndRs kYQwOEpbDnxBhVxc0eKUntifBey2Rhfs+AW2s= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type; b=Fh8w/Vd8MZnSzYiviyUyXXQoKfPYVZGkOg+R8Okm1rRwQRQuZOyyeyx7uIJ4qnK5Pp KM1DfUzrbbSHE15SfcFrnSkIOL7ScHZmnKoQcwkwAJ8rwvHK+2Sc7BRXiLu6xuIdFPfc cooW3MnPjxy3HygInfpX3MM4GPyH26hqYSo90= MIME-Version: 1.0 Sender: jchris@gmail.com Received: by 10.220.79.131 with SMTP id p3mr3231282vck.22.1253379428522; Sat, 19 Sep 2009 09:57:08 -0700 (PDT) In-Reply-To: <8b1c89270909190513r1494523ew6a9cb363269c3f04@mail.gmail.com> References: <8b1c89270909190513r1494523ew6a9cb363269c3f04@mail.gmail.com> Date: Sat, 19 Sep 2009 09:57:08 -0700 X-Google-Sender-Auth: 2057736385e624c0 Message-ID: Subject: Re: Query server perfromance issues .. From: Chris Anderson To: user@couchdb.apache.org, dghosh@acm.org Content-Type: text/plain; charset=ISO-8859-1 X-Virus-Checked: Checked by ClamAV on apache.org On Sat, Sep 19, 2009 at 5:13 AM, Debasish Ghosh wrote: > Hi - > As I have mentioned previously I have been working on a Scala driver for > CouchDB, which also includes a Query Server. I was working with an April > snapshot of 2009/04/23. This worked fine for all the views and validations > that I have written.Things were running fine and I could write map/reduce > and validation functions in Scala. > Recently I tried to upgrade to trunk. Suddenly the views and validations > became very very slow. After some fact finding, I tried to poke into * > couch_query_servers.erl*, since that seemed to be the obvious area to look > into. I may be worng though, but it was a blind guess. > I noticed that previously I was working with *revision 749852* of the file, > which delivered the goods for me. Then when I faced problems with the trunk, > I started doing a git reset to earlier versions of this file. Now I find > that it looks like the performance problem starts from *revision 780165* of > this file. Have a look at > http://svn.apache.org/viewvc/couchdb/trunk/src/couchdb/couch_query_servers.erl?r1=780165&r2=749852&diff_format=hfor > the difference. Looks like there have been some major changes. I am > just > wondering if this change has anything to do with the performance issue. > A quick scan of that diff suggests that the only real behavior change that should effect you is the ["reset"] call for recycled processes. Maybe reset is expensive in your implementation? BTW, have you tried running: spec test/query_server_spec.rb -f specdoc --color It should be simple to extend that test suite to test your scala server. If there are patches we can make to make it easier to integrate outside projects with the query server test suite, I'm happy to help there as well. > Any help, pointer will be appreciated. > > Thanks. > - Debasish > -- Chris Anderson http://jchrisa.net http://couch.io