Return-Path: Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: (qmail 90578 invoked from network); 3 Sep 2010 05:13:40 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 3 Sep 2010 05:13:40 -0000 Received: (qmail 51977 invoked by uid 500); 3 Sep 2010 05:13:38 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 51613 invoked by uid 500); 3 Sep 2010 05:13:35 -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 51605 invoked by uid 99); 3 Sep 2010 05:13:34 -0000 Received: from Unknown (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 03 Sep 2010 05:13:34 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of virtualandy@gmail.com designates 209.85.161.52 as permitted sender) Received: from [209.85.161.52] (HELO mail-fx0-f52.google.com) (209.85.161.52) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 03 Sep 2010 05:13:12 +0000 Received: by fxm10 with SMTP id 10so1127924fxm.11 for ; Thu, 02 Sep 2010 22:12:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=LWQrEQqCAwPsCr5jEfzNTkHXaIwnb1iwmIkq5t+p5To=; b=F4W6otYaSKuelgoG+mtuJJRXsav+ZohJFhW9HhcSU1nG2Qn/lV2fHCsb8K1xx3TMbl jDNHWSuJVPXEQH9XKGocQ4tkuCMnwQBjjNKBKlzVYJrUKrbhS10QnQGBvxm4woEZ+u1n dQqocvi5rtDFPK5irTNohdpBt4Rnr8fhWk/IM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=n4sy+PFI6tdV/vQiYMW6iou3L0HycIZgzMeiWjfhIhWfdzlK3Bz3XcPiAb+ZedwOl2 LqV3ZudwwQUNgjYHTAGZztu/rgyK5eqxoBAIHptCFlTRWqV67pPKXJOkhRcfxZX2KtFD ifTgxaLe/sgDidWr5lrhSgQT5kU75FA3JJFrs= MIME-Version: 1.0 Received: by 10.239.192.65 with SMTP id d1mr7386hbi.151.1283490772228; Thu, 02 Sep 2010 22:12:52 -0700 (PDT) Received: by 10.239.185.197 with HTTP; Thu, 2 Sep 2010 22:12:52 -0700 (PDT) In-Reply-To: <9843AB60-084E-43C3-A4AA-4268DC71EEA9@apache.org> References: <9843AB60-084E-43C3-A4AA-4268DC71EEA9@apache.org> Date: Thu, 2 Sep 2010 23:12:52 -0600 Message-ID: Subject: Re: purely curious - couch/spidermonkey vs node/v8 From: andy e To: user@couchdb.apache.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Interesting, thanks for the feedback. Always cool to hear why/how decisions were made with these sorts of projects. Andy On Thu, Sep 2, 2010 at 11:35 AM, J Chris Anderson wrote= : > > On Sep 1, 2010, at 11:17 PM, Paul Davis wrote: > >> On Thu, Sep 2, 2010 at 1:47 AM, andy e wrote: >>> I've got no real issue or concern, was just purely curious and was >>> thinking about couch's use of SpiderMonkey as the JS engine tonight. >>> >>> Is there a reason why couchdb uses spidermonkey, vs v8 (as node.js is >>> using)? Is it license related? Too much work for too little gain? Was >>> V8 not around when choosing an engine (likely, given the timelines...I >>> think)? >>> >>> Anyway, just curious. >>> >>> thanks, >>> >>> andy >>> >> >> Mostly it's history related. CouchDB used Spidermonkey before V8 even >> existed. Reasons for sticking with Spidermonkey involve packaging and >> multi-threading. V8 being newer doesn't have packages available on >> semi recent distributions. I don't have my netbook awake so I can't >> check that it even has one for Ubuntu 10.04. I know that node.js >> packages an entire V8 source checkout as part of the distribution >> which package managers are not fond of. Also AFAIK, its not yet got >> multi-threading support. The current CouchDB use doesn't require this, >> but there are a couple different experiments running that do. There's >> also (again, IIRC) no support for E4X which has been >> semi-officially-kinda-sorta-expected in the CouchDB interpreter for >> things like generating RSS feeds. >> > > I'll add that Spidermonkey is probably =A0faster than v8 for map reduce, = as it has the tracing jit. V8 is designed to be fast for web pages, not lon= g running processes. > > That said, it should be "trivial" to make a node.js query server, just as= it is to make a python or ruby query server. > > Here is the test suite: > > http://github.com/apache/couchdb/blob/trunk/test/view_server/query_server= _spec.rb > >> But bottom line, it was deemed the best engine when it was chosen and >> a couple things have evolved such that it'll be hard to move away >> until one of the other engines catches up in multiple categories. >> >> HTH, >> Paul Davis > >