From user-return-18693-apmail-couchdb-user-archive=couchdb.apache.org@couchdb.apache.org Thu Nov 3 14:25:37 2011 Return-Path: X-Original-To: apmail-couchdb-user-archive@www.apache.org Delivered-To: apmail-couchdb-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 27E957A6A for ; Thu, 3 Nov 2011 14:25:37 +0000 (UTC) Received: (qmail 19781 invoked by uid 500); 3 Nov 2011 14:25:35 -0000 Delivered-To: apmail-couchdb-user-archive@couchdb.apache.org Received: (qmail 19734 invoked by uid 500); 3 Nov 2011 14:25: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 19726 invoked by uid 99); 3 Nov 2011 14:25:35 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 03 Nov 2011 14:25:35 +0000 X-ASF-Spam-Status: No, hits=3.3 required=5.0 tests=FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,FREEMAIL_REPLYTO_END_DIGIT,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [98.139.91.216] (HELO nm19-vm0.bullet.mail.sp2.yahoo.com) (98.139.91.216) by apache.org (qpsmtpd/0.29) with SMTP; Thu, 03 Nov 2011 14:25:26 +0000 Received: from [98.139.91.67] by nm19.bullet.mail.sp2.yahoo.com with NNFMP; 03 Nov 2011 14:25:04 -0000 Received: from [98.139.91.49] by tm7.bullet.mail.sp2.yahoo.com with NNFMP; 03 Nov 2011 14:25:03 -0000 Received: from [127.0.0.1] by omp1049.mail.sp2.yahoo.com with NNFMP; 03 Nov 2011 14:25:03 -0000 X-Yahoo-Newman-Property: ymail-3 X-Yahoo-Newman-Id: 868181.71308.bm@omp1049.mail.sp2.yahoo.com Received: (qmail 19820 invoked by uid 60001); 3 Nov 2011 14:25:03 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1320330303; bh=BHcIflhOXADi2q4CqykZt8cV0Vuadl95oDikQv6Zmj4=; h=X-YMail-OSG:Received:X-Mailer:References:Message-ID:Date:From:Reply-To:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=MRpeykaeGpZtOrccQ0t7u7VAMi0m9RZQ9FO8Lr9Aa7Pms/DNEdbW+4tfrLMfT0e5sx315VN7fpTO6selwJn7I61vddgWSytdnEIbiC8VzlqBsKQ0vSYlYTQYiZrQrWMdXOT/6FrXWXgk4Cu6BGuEYV8JyHa2IG8Q7EPN21nHjSU= DomainKey-Signature:a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=X-YMail-OSG:Received:X-Mailer:References:Message-ID:Date:From:Reply-To:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=A73+TAWxtzNV+IlaiuSsGAS8uTtBhC/nMCQBC8JKS8IX/PUE5IpeA9Esx/25UVtUSanXlPFGFPJys1+utNY9f5aT7C+OjPn21dzVez6Y5bPABmEk5kptQry62NVrD9MQe1uDSwFLmBQ0JhaDSms2ClR4+mtFIWQtwFius4j0Kkk=; X-YMail-OSG: PbIdDRkVM1lF0AcLiXMfDapPOKHX9ovuGGRbOb37ok6SqTd MKhEqnI2p9I8YKvSQ.Cn6q5.pzrgBkZtzDo.sxufh5H_4MjDz5MAp0bpfnJN tdYxJhw.OdVMTzAivKCxZGBMHwDJGVf0_z2KzwIH1dw_Jx649wA7IuN1QUEP jZDWUVZe4Px_W.gcdmGbFWDFfQM3TVrMge152c4Uj_0xYBlxPuacb7fxqTdx DV3BASfSJ1WrGPp.79ZvhlQWWeqNNYgXtY9Rl41YQ4eIYElxY4UJcPBiq2zq Nc7e41zEoMGqhhtTaq_QbGsnj53RErtKsCKQilpRUrrmnVuXZaxqZJ5bKWmP wVH5964CZBgXtIdw9vKJwR3Ipk4PSj0RgvCJ.gGSckDxQc.I0MdMNmV8A5Z3 3o1jXMqC6OOKpi_utJADuzrVyyEfiWSO0htZzc2O4Qmu2C.TFdVgbyMSmYvp kHomTX2eipyS8IObjogDnPLHy55JrKkch8AbKyJ2ZiYrM5_smKrPhrEaPjWN HL9QhUvtEstkt4u7uK5h9A8AmPRq5wiTSltWs8IjYg_.PBzw.kD5m66Y- Received: from [194.145.163.20] by web112103.mail.gq1.yahoo.com via HTTP; Thu, 03 Nov 2011 07:25:03 PDT X-Mailer: YahooMailWebService/0.8.115.325013 References: <1320326069.76748.YahooMailNeo@web112106.mail.gq1.yahoo.com> <312736B1-84C8-4A96-9900-C00572987679@vpro.nl> Message-ID: <1320330303.19292.YahooMailNeo@web112103.mail.gq1.yahoo.com> Date: Thu, 3 Nov 2011 07:25:03 -0700 (PDT) From: N/A N/A Reply-To: N/A N/A Subject: Re: couchdb: function eval on insert, update... To: Nils Breunese , "user@couchdb.apache.org" In-Reply-To: <312736B1-84C8-4A96-9900-C00572987679@vpro.nl> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="652422723-370395795-1320330303=:19292" X-Virus-Checked: Checked by ClamAV on apache.org --652422723-370395795-1320330303=:19292 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Yep. Sometimes it is useful. But i think not in this case, because insert/u= pdate already happened. So i am doing another PUT/POST to update the docume= nt.=A0=0AI talk about document processing with server side logic before ins= ert.=0A=0AFor example i want to know which document is last in my DB based = on some criteria. How to achieve that ? My _view is giving me all records w= ith doc.name =3D "test", but which of those "test" documents is last? I can= use date ofc. But using date as criteria is dangerous since date is outsid= e server logic. Something/someone can change it. So last documents will not= be last.=0A=0A=0A________________________________=0AFrom: Nils Breunese =0ATo: "user@couchdb.apache.org" ; N/A N/A =0ASent: Thursday, November 3, 2011 3:59 = PM=0ASubject: Re: couchdb: function eval on insert, update...=0A=0AN/A N/A = wrote:=0A=0A> Any plans to implement doc features, like expression evaluati= on on insert or update in CouchDB? For example:=0A> POST:=0A> {=0A> "test1"= : "1",=0A> "test2": "2",=0A> "test3": function(doc) {=0A> var res =3D doc.t= est1 + doc.test2=0A> return res;=0A> /* or maybe even=A0 =A0 =A0 =A0 =A0 = =A0 =A0 =A0 if (doc["test2"]) {=0A> doc["test4"]();=0A> } else {=0A> ... mo= re stuff...=0A> }=0A> */=0A>=A0 =A0 }=0A> "test4": function(doc_or_maybe_s= omething_else) { ... }=0A> }=0A>=0A> result in couchdb:=0A> {=0A> "test1": = "1",=0A> "test2": "2",=0A> "test3": "3"=0A> // ..etc.=0A> }=0A=0ADocument u= pdate handlers [0] can be used to invoke server-side logic to create or upd= ate a document. Maybe you can use this to solve your use case?=0A=0ANils=0A= =0A[0] http://wiki.apache.org/couchdb/Document_Update_Handlers=0A----------= --------------------------------------------------------------=0AVPRO=A0 ww= w.vpro.nl=0A---------------------------------------------------------------= --------- --652422723-370395795-1320330303=:19292--