From thrift-user-returnjenniferbrown@example.org Tue Jun 01 12:04:28 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 97186 invoked from network); 1 Jun 2010 12:04:28 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 12:04:28 -0000 Received: (qmail 23923 invoked by uid 500); 1 Jun 2010 12:04:27 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 23835 invoked by uid 500); 1 Jun 2010 12:04:26 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 23827 invoked by uid 99); 1 Jun 2010 12:04:26 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 12:04:26 +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 jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO fg-out-1718.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 12:04:19 +0000 Received: by fg-out-1718.google.com with SMTP id 16so1439456fgg.0 for <jenniferbrown@example.org>; Tue, 01 Jun 2010 05:03:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=S+715mYluARM9eqRK5uHklO7pPDSWNZhguuKi3gw2+w=; b=rpmctPZnHJeMGFQD/7ADojf3ZYe1Ood7rbaOaygLp0k+XcEk7NDLDlTdw8BZ0Lm/kA oh6l82SzDMWKAsveaAbkq3k2dqorbJd/+oV89MZ3zVCD1BWDGO2GS2lO4B9h+YeJBhwC o4g5InsA1HUqXidnQNWG9Y3w3Qql8AwuuRIF0= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=t7LV9AdVFMQA7fAWnDrmkFxxqL6IUq2SDTDhDwQgFWYF9q78oBju2SnBVwzSqaEEqW fy8YTiYqjld5EHFi7BVXMv1NXm28qe6ALNQdrb+YWbV0T0MvBYbsqjf7qRpGc+G/3BED R30HhesmXAVc1HPxI2wIWYszlYQbE0OVoTgzg= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id q3mr11089207fgj.26.1275393838472; Tue, 01 Jun 2010 05:03:58 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Tue, 1 Jun 2010 05:03:58 -0700 (PDT) Date: Tue, 1 Jun 2010 15:03:58 +0300 Message-ID: <jenniferbrown@example.org> Subject: thrift_protocol php-extension taking arguments by-reference From: Oleg Grenrus <jenniferbrown@example.org> To: jenniferbrown@example.org Content-Type: text/plain; charset=ISO-8859-1 X-Virus-Checked: Checked by ClamAV on apache.org Hi, recently we encountered a problem with thrift_protocol PHP-extension: it takes parameters "by-reference" and casts them into proper types. Probably example will explain what is possibly wrong: <?php $str = 100; var_dump($str); echo rtrim($str), "\n"; // expects string var_dump($str); ?> and output is as expected, type of $str isn't changed int(100) 100 int(100) But consider we have Thrift service with function specified as: void foo(1:string s) and we use it similarly <?php // ... initialize thrift $str = 100; var_dump($str); $client->foo($str); var_dump($str); ?> results int(100) string(3) "100" => type of $str is changed! I looked through the extension code and there's convert_to_* calls on the input variables, which causes this suprising behaviour. I also tried to replace convert_to_* calls in binary_serialize with _ex counterparts, but something went completely wrong. Is this expected behaviour or should this be considered as a bug? -- Oleg Grenrus From thrift-user-returnjenniferbrown@example.org Tue Jun 01 16:44:40 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 8974 invoked from network); 1 Jun 2010 16:44:40 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 16:44:40 -0000 Received: (qmail 93887 invoked by uid 500); 1 Jun 2010 16:44:40 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 93841 invoked by uid 500); 1 Jun 2010 16:44:39 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 93833 invoked by uid 99); 1 Jun 2010 16:44:39 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 16:44:39 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=FREEMAIL_ENVFROM_END_DIGIT,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: local policy) Received: from [83.161.120.155] (HELO web50906.mail.re2.yahoo.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Tue, 01 Jun 2010 16:44:31 +0000 Received: (qmail 73121 invoked by uid 60001); 1 Jun 2010 16:44:10 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1275410650; bh=qFy8L+rTjd4frUu6U8hGd6xo6NWb2KYVMx7oSNbAiy8=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type; b=aDsCN2PdtDhJXLNSiFRqw+Uz1jq6lsgziS2lKTA7YSqBLWsoUgaYk7FrxPhJeusvqb/OoPAwL1bljdokUOBnCTue/aAjp1RG4S9Jt+fLAI72CVWVA+dqcZFUm4qlyI2hE7/CzAOZ5N4SA5qrPrNMzfXiR016DImzoqRy0TOhTfY= DomainKey-Signature:a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:MIME-Version:Content-Type; b=NHiSHg4wr8kzSisogafGeefpv61c3n5VRyOmRmM2PYLkFOW86CXyydcFu7sqvNiolMXDU8/SKAGaAZBsI3NXfmRkmuqjuUyreJs1Sb1twgmHxDsSmtkWfyPz++F9yPge6EypR2yC/sKJrbdog20J6uittpa0ca1cHqkh1MyoXXU=; Message-ID: <jenniferbrown@example.org> X-YMail-OSG: wUV.l2YVM1ln5owY2vD0Zj5x5GlQa.qqFCOuESK2EV7iTNc zepsYXN8W.IrAwUo3Li_GzGsYfEDyLWt4_dkpM6pDkiLozNoPbt9kScri2um 9D5teqR.AuEp5CdvaXNiRx1HrjLASuCwMAjOLHYu8huoAOcjsNgQ4s1DogQV wOgv1Dqeq8UI9_CU8lV3JLMwKKwGEs0D2b3HXD2MQqHITuBUDeBoXz0mcUI4 ftSq1hB4H64vZV3jt6zI_hl01qp1ZrwODlArgERmNWIl1nEesFKvsZSDGJdc jRj78Apwv6bWE.gBfAav5sex1NfODom_rau2M1sDb4iq7WhQAZSwtHgunlKw Izg1aA_IbyupY6PgLYyI.40HZ6LqR Received: from [83.161.120.155] by web50906.mail.re2.yahoo.com via HTTP; Tue, 01 Jun 2010 09:44:10 PDT X-Mailer: YahooMailClassic/11.0.8 YahooMailWebService/83.161.120.1559680 Date: Tue, 1 Jun 2010 09:44:10 -0700 (PDT) From: A R <jenniferbrown@example.org> Subject: Where is the "real" Thrift ? To: jenniferbrown@example.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Virus-Checked: Checked by ClamAV on apache.org It appears I'm having a deployment problem because of different versions of Thrift: Thrift version 20080411-r903393 Thrift version 0.4.0-dev Not really sure where I got the two different versions. Where is the latest stable release? Is this good (looks old)? http://www.apache.org/dyn/closer.cgi?path=/incubator/thrift/0.2.0-incubating/thrift-0.2.0-incubating.tar.gz What about this (looks like the best choice but is dead)? git clone git://git.thrift-rpc.org/thrift.git git.thrift-rpc.org[0: 83.161.120.155]: errno=Connection refused fatal: unable to connect a socket (Connection refused) fetch-pack from 'git://git.thrift-rpc.org/thrift.git' failed. TIA! a. From thrift-user-returnjenniferbrown@example.org Tue Jun 01 17:23:46 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 35840 invoked from network); 1 Jun 2010 17:23:45 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 17:23:45 -0000 Received: (qmail 54591 invoked by uid 500); 1 Jun 2010 17:23:45 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 54546 invoked by uid 500); 1 Jun 2010 17:23:45 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 54537 invoked by uid 99); 1 Jun 2010 17:23:45 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 17:23:45 +0000 X-ASF-Spam-Status: No, hits=0.7 required=10.0 tests=SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [83.161.120.155] (HELO mail-fx0-f47.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 17:23:38 +0000 Received: by fxm9 with SMTP id 9so302574fxm.6 for <jenniferbrown@example.org>; Tue, 01 Jun 2010 10:23:17 -0700 (PDT) Received: by 83.161.120.155 with SMTP id v10mr874490bkx.10.1275412995443; Tue, 01 Jun 2010 10:23:15 -0700 (PDT) MIME-Version: 1.0 Received: by 83.161.120.155 with HTTP; Tue, 1 Jun 2010 10:22:55 -0700 (PDT) In-Reply-To: <jenniferbrown@example.org> References: <jenniferbrown@example.org> From: Michael Walsh <jenniferbrown@example.org> Date: Tue, 1 Jun 2010 18:22:55 +0100 Message-ID: <jenniferbrown@example.org> Subject: Re: Where is the "real" Thrift ? To: jenniferbrown@example.org Content-Type: text/plain; charset=ISO-8859-1 X-Virus-Checked: Checked by ClamAV on apache.org You're absolutely right, there are too many places to get Thrift and finding the correct site is near impossible to find even with Google. Bryan Duxbury has packaged a 0.3.0 Release Candidate 4 which is latest and greatest and possibly the most stable. http://people.apache.org/~bryanduxbury/thrift-0.3.0-rc4.tar.gz which is based on https://svn.apache.org/repos/asf/incubator/thrift/branches/0.3.0 I can understand how easy it is to get led astray, there are too many ways to end up in the wrong place and it's very difficult to find the Incubator site from Google! Thrift-rpc.org should probably point to http://incubator.apache.org/thrift/ There's Davids hosted gitweb There's a github code repo There's the official SVN. Oops! Michael On Tue, Jun 1, 2010 at 5:44 PM, A R <jenniferbrown@example.org> wrote: > It appears I'm having a deployment problem because of different versions of Thrift: > > Thrift version 20080411-r903393 > Thrift version 0.4.0-dev > > Not really sure where I got the two different versions. Where is the latest stable release? > > Is this good (looks old)? > http://www.apache.org/dyn/closer.cgi?path=/incubator/thrift/0.2.0-incubating/thrift-0.2.0-incubating.tar.gz > > What about this (looks like the best choice but is dead)? > git clone git://git.thrift-rpc.org/thrift.git > > git.thrift-rpc.org[0: 83.161.120.155]: errno=Connection refused > fatal: unable to connect a socket (Connection refused) > fetch-pack from 'git://git.thrift-rpc.org/thrift.git' failed. > > TIA! > a. > > From thrift-user-returnjenniferbrown@example.org Tue Jun 01 18:16:42 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 53818 invoked from network); 1 Jun 2010 18:16:42 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 18:16:42 -0000 Received: (qmail 40941 invoked by uid 500); 1 Jun 2010 18:16:42 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 40854 invoked by uid 500); 1 Jun 2010 18:16:42 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 40846 invoked by uid 99); 1 Jun 2010 18:16:41 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 18:16:41 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=FREEMAIL_ENVFROM_END_DIGIT,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: local policy) Received: from [83.161.120.155] (HELO web50907.mail.re2.yahoo.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Tue, 01 Jun 2010 18:16:34 +0000 Received: (qmail 35176 invoked by uid 60001); 1 Jun 2010 18:16:13 -0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s1024; t=1275416173; bh=NOjQHVeJ9gCHqhYxe4sAeiPCw0reTOcyI81gEZpj1js=; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=amhoYOw/XXdqbYT12yNNDfnBg0Z6UkSfkGQXepJlh/L86qJ4vMrL8RFI3uiXVk9hnyqLI9WLWqVRgtnMCg2kgJHnjv4q3c93hUPFAFAnKQSe6Mm3JhtzKW3UcgORC9jfIAukMU13ZKCO7U4McHNSiokL8PyTb2m7a4pVfCdLDr8= DomainKey-Signature:a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:X-YMail-OSG:Received:X-Mailer:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type; b=lFgtZ5u1rWMBSe8xKhYIKR6RxG84v9A5Ec44Tka6u+kBQoWKDfobQR7nle8xYWr3LD1gaZkHG8VvOgDFtFHQ2hjLRTtK43iMjUVB4NLLbsx41Toc4YT+rG2uVm9viwUjpMmULW56qv2p+z7xC3NUAWTu9Fmqm2p0sw0HWCqVEz4=; Message-ID: <jenniferbrown@example.org> X-YMail-OSG: YdWGnukVM1l586SiP1eLAgRss5YK7uWg0wa6FWhvw_EfBsc FN5EVXYtHriEIiM9z227g9ar7wBiZO8z56rRCAUiU0gP25IblJb_TWjcxf57 wK.UL6qZ07MRXkKTuE6jjLZoq1TUD6jazPq1eRPPB0Kqj2O6_0bwxOEg3KvG ia5FdSuifUWsBH055OrMBI2cEp5Sl1ZpCdYaIHx3ygBPZ4jeoyH04MuzRyUt MYhhrv8UJU8kbclwRqcFvifO.DPPerCO.YMxOY7SElyL9dMwj0a2glCcxTDU pxE77XeBqcFaAwESRd7_8lX21xI.zKAAaFBzykzWi5j5z0BTAaHbI.wKvqJ2 6YqZZfBkmA_oFGQgtOrEVml1RUA-- Received: from [83.161.120.155] by web50907.mail.re2.yahoo.com via HTTP; Tue, 01 Jun 2010 11:16:13 PDT X-Mailer: YahooMailClassic/11.0.8 YahooMailWebService/83.161.120.1559680 Date: Tue, 1 Jun 2010 11:16:13 -0700 (PDT) From: A R <jenniferbrown@example.org> Subject: Re: Where is the "real" Thrift ? To: jenniferbrown@example.org In-Reply-To: <jenniferbrown@example.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Virus-Checked: Checked by ClamAV on apache.org Thank you for responding, Michael! I think I will update both my development and production with 0.3.0 Release Candidate 4 and see what happens. Thanks again, Adam. --- On Tue, 6/1/10, Michael Walsh <jenniferbrown@example.org> wrote: > From: Michael Walsh <jenniferbrown@example.org> > Subject: Re: Where is the "real" Thrift ? > To: jenniferbrown@example.org > Date: Tuesday, June 1, 2010, 10:22 AM > You're absolutely right, there are > too many places to get Thrift and > finding the correct site is near impossible to find even > with Google. > > Bryan Duxbury has packaged a 0.3.0 Release Candidate 4 > which is latest > and greatest and possibly the most stable. > > http://people.apache.org/~bryanduxbury/thrift-0.3.0-rc4.tar.gz > which > is based on > https://svn.apache.org/repos/asf/incubator/thrift/branches/0.3.0 > > I can understand how easy it is to get led astray, there > are too many > ways to end up in the wrong place and it's very difficult > to find the > Incubator site from Google! > > Thrift-rpc.org should probably point to http://incubator.apache.org/thrift/ > > There's Davids hosted gitweb > There's a github code repo > There's the official SVN. > Oops! > > Michael > > On Tue, Jun 1, 2010 at 5:44 PM, A R <jenniferbrown@example.org> > wrote: > > It appears I'm having a deployment problem because of > different versions of Thrift: > > > > Thrift version 20080411-r903393 > > Thrift version 0.4.0-dev > > > > Not really sure where I got the two different > versions. Where is the latest stable release? > > > > Is this good (looks old)? > > http://www.apache.org/dyn/closer.cgi?path=/incubator/thrift/0.2.0-incubating/thrift-0.2.0-incubating.tar.gz > > > > What about this (looks like the best choice but is > dead)? > > git clone git://git.thrift-rpc.org/thrift.git > > > > git.thrift-rpc.org[0: 83.161.120.155]: > errno=Connection refused > > fatal: unable to connect a socket (Connection > refused) > > fetch-pack from 'git://git.thrift-rpc.org/thrift.git' > failed. > > > > TIA! > > a. > > > > > From thrift-user-returnjenniferbrown@example.org Tue Jun 01 18:25:26 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 62522 invoked from network); 1 Jun 2010 18:25:26 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 18:25:26 -0000 Received: (qmail 58306 invoked by uid 500); 1 Jun 2010 18:25:26 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 58242 invoked by uid 500); 1 Jun 2010 18:25:25 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 58234 invoked by uid 99); 1 Jun 2010 18:25:25 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 18:25:25 +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 (athena.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-ew0-f213.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 18:25:18 +0000 Received: by ewy5 with SMTP id 5so1078524ewy.0 for <jenniferbrown@example.org>; Tue, 01 Jun 2010 11:24:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:references:in-reply-to :mime-version:content-type:message-id:content-transfer-encoding:from :subject:date:to:x-mailer; bh=YVVtjkd0swOvF52iPzuLkoEZwOFQ5Hw15bOYjKk20eA=; b=i7+EQfPZ/e9zI4DGnTGDtaG7i19BzZEakMpF6gNFtHOzhnOkGS5a/Fn4HSsDY76XoB rCqrSAqCQDOEEuBUJMOUYwsTbYR689U/VKCUJA/YfDmFvYnz0I7AaDZ7zj+qbBGfL3Eg HZKq4+1F7ORxAqvnOTTQz6r/ayaB8GKyXSTjI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:references:in-reply-to:mime-version:content-type:message-id :content-transfer-encoding:from:subject:date:to:x-mailer; b=dliw8p9OS5OANIahaGhNnVg6hCRiJrhCqSTVxY+abS+6kWTQXemFmiHiU8HxRFHWK7 VEj6qdVbXXWA7EeRoNvuPAHFyY4NezAf2DfqzB+g27q/X9IuPa6vIZlejXxoZNBuuVXS l2uuj/GnAGr0nvFwoE3lMNmrt3QeSosxt/AWg= Received: by 83.161.120.155 with SMTP id y19mr610927ebc.94.1275416696341; Tue, 01 Jun 2010 11:24:56 -0700 (PDT) Received: from lilah.gansnet.null (5ED2AFEB.cable.ziggo.nl [83.161.120.155]) by mx.google.com with ESMTPS id 14sm3961801ewy.6.283.161.120.155.24.52 (version=TLSv1/SSLv3 cipher=RC4-MD5); Tue, 01 Jun 2010 11:24:53 -0700 (PDT) Sender: Anner van Hardenbroek <jenniferbrown@example.org> References: <jenniferbrown@example.org> In-Reply-To: <jenniferbrown@example.org> Mime-Version: 1.0 (Apple Message framework v1078) Content-Type: text/plain; charset=us-ascii Message-Id: <jenniferbrown@example.org> Content-Transfer-Encoding: quoted-printable From: Anner van Hardenbroek <jenniferbrown@example.org> Subject: Re: thrift_protocol php-extension taking arguments by-reference Date: Tue, 1 Jun 2010 20:24:51 +0200 To: jenniferbrown@example.org X-Mailer: Apple Mail (2.1078) Hi, I consider this behavior a bug because I'm surprised when it happens. = Because PHP 'normally' does implicit type casting and most functions = don't use referenced arguments, I assume the argument I pass to the = service function won't change, because this will happen in most of the = cases. But when I pass a variable to a function like settype(), I assume that = this will change the type, because it's the nature of the function to do = so. Also when I'm using a function like system(), it makes sense to have = a referenced output variable, because the nature of the function = dictates that the output variable will be filled with the output of the = executed command. I don't know why references are used, but it I guess they are cheaper, = performance and memory wise. Kind regards, - Anner. -- Anner van Hardenbroek jenniferbrown@example.org On 1 jun 2010, at 14:03, Oleg Grenrus wrote: > Hi, >=20 > recently we encountered a problem with thrift_protocol PHP-extension: > it takes parameters "by-reference" and casts them into proper types. >=20 > Probably example will explain what is possibly wrong: >=20 > <?php > $str =3D 100; > var_dump($str); > echo rtrim($str), "\n"; // expects string > var_dump($str); > ?> >=20 > and output is as expected, type of $str isn't changed >=20 > int(100) > 100 > int(100) >=20 >=20 > But consider we have Thrift service with function specified as: >=20 > void foo(1:string s) >=20 > and we use it similarly >=20 > <?php > // ... initialize thrift > $str =3D 100; > var_dump($str); > $client->foo($str); > var_dump($str); > ?> >=20 > results >=20 > int(100) > string(3) "100" >=20 > =3D> type of $str is changed! >=20 > I looked through the extension code and there's convert_to_* calls on = the input > variables, which causes this suprising behaviour. I also tried to = replace > convert_to_* calls in binary_serialize with _ex counterparts, but = something > went completely wrong. >=20 > Is this expected behaviour or should this be considered as a bug? >=20 >=20 > --=20 > Oleg Grenrus From thrift-user-returnjenniferbrown@example.org Tue Jun 01 18:32:54 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 64882 invoked from network); 1 Jun 2010 18:32:54 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 18:32:54 -0000 Received: (qmail 67887 invoked by uid 500); 1 Jun 2010 18:32:54 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 67866 invoked by uid 500); 1 Jun 2010 18:32:54 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 67858 invoked by uid 99); 1 Jun 2010 18:32:54 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 18:32:54 +0000 X-ASF-Spam-Status: No, hits=-0.6 required=10.0 tests=AWL,FREEMAIL_FROM,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-fx0-f47.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 18:32:49 +0000 Received: by fxm9 with SMTP id 9so365407fxm.6 for <jenniferbrown@example.org>; Tue, 01 Jun 2010 11:32:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:mime-version:received:in-reply-to :references:from:date:message-id:subject:to:content-type; bh=LvWJI7TkTCz1XC7rsd+zQ6m4it78ndht8UL/CfHIZ+g=; b=VWL2DU4LEW/xi7o7B6k4rKrXqXON0+ISoK/sikUABBfw23DlsIXqhTuA8ay5Jm5v1e OUl4UIksnVAD4fwSXP/TVO2YfWzTP4Sxp1B5AeXJCxY1mCvsbAyhhfbhpotAAIwIbMYI sGV2+cLy+1OI0RqJwW831N7k3jAcn5QISScWk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; b=AvkGVailtT5VZ2a8caMfBgbZK8BYk9lNbnURr4z5xKm9eNFX/yKC26vsqGqdo9Ylxv ct+uYLKfIUXjkKAyFBrdvJYbV4ijfuGR8w4eXR7I6gFuvmNE1b+QQ81H0xG/t8k5FlHx 7YntQyLIy0+MaeKtl/TWEp/o/cAz8whDEPBek= Received: by 83.161.120.155 with SMTP id k7mr932744bkf.146.1275417129174; Tue, 01 Jun 2010 11:32:09 -0700 (PDT) MIME-Version: 1.0 Received: by 83.161.120.155 with HTTP; Tue, 1 Jun 2010 11:31:49 -0700 (PDT) In-Reply-To: <jenniferbrown@example.org> References: <jenniferbrown@example.org> <jenniferbrown@example.org> From: Phillip B Oldham <jenniferbrown@example.org> Date: Tue, 1 Jun 2010 19:31:49 +0100 Message-ID: <jenniferbrown@example.org> Subject: Re: Where is the "real" Thrift ? To: jenniferbrown@example.org Content-Type: text/plain; charset=UTF-8 It would be useful if the sites, wiki et al could get a bit of TCL. On Tue, Jun 1, 2010 at 7:16 PM, A R <jenniferbrown@example.org> wrote: > Thank you for responding, Michael! > > I think I will update both my development and production with 0.3.0 Release Candidate 4 and see what happens. > > Thanks again, > Adam. > > --- On Tue, 6/1/10, Michael Walsh <jenniferbrown@example.org> wrote: > >> From: Michael Walsh <jenniferbrown@example.org> >> Subject: Re: Where is the "real" Thrift ? >> To: jenniferbrown@example.org >> Date: Tuesday, June 1, 2010, 10:22 AM >> You're absolutely right, there are >> too many places to get Thrift and >> finding the correct site is near impossible to find even >> with Google. >> >> Bryan Duxbury has packaged a 0.3.0 Release Candidate 4 >> which is latest >> and greatest and possibly the most stable. >> >> http://people.apache.org/~bryanduxbury/thrift-0.3.0-rc4.tar.gz >> which >> is based on >> https://svn.apache.org/repos/asf/incubator/thrift/branches/0.3.0 >> >> I can understand how easy it is to get led astray, there >> are too many >> ways to end up in the wrong place and it's very difficult >> to find the >> Incubator site from Google! >> >> Thrift-rpc.org should probably point to http://incubator.apache.org/thrift/ >> >> There's Davids hosted gitweb >> There's a github code repo >> There's the official SVN. >> Oops! >> >> Michael >> >> On Tue, Jun 1, 2010 at 5:44 PM, A R <jenniferbrown@example.org> >> wrote: >> > It appears I'm having a deployment problem because of >> different versions of Thrift: >> > >> > Thrift version 20080411-r903393 >> > Thrift version 0.4.0-dev >> > >> > Not really sure where I got the two different >> versions. Where is the latest stable release? >> > >> > Is this good (looks old)? >> > http://www.apache.org/dyn/closer.cgi?path=/incubator/thrift/0.2.0-incubating/thrift-0.2.0-incubating.tar.gz >> > >> > What about this (looks like the best choice but is >> dead)? >> > git clone git://git.thrift-rpc.org/thrift.git >> > >> > git.thrift-rpc.org[0: 83.161.120.155]: >> errno=Connection refused >> > fatal: unable to connect a socket (Connection >> refused) >> > fetch-pack from 'git://git.thrift-rpc.org/thrift.git' >> failed. >> > >> > TIA! >> > a. >> > >> > >> > -- Phillip B Oldham jenniferbrown@example.org 833.886.1094 From thrift-user-returnjenniferbrown@example.org Tue Jun 01 18:57:26 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 71201 invoked from network); 1 Jun 2010 18:57:25 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 18:57:25 -0000 Received: (qmail 8851 invoked by uid 500); 1 Jun 2010 18:57:24 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 8830 invoked by uid 500); 1 Jun 2010 18:57:24 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 8716 invoked by uid 99); 1 Jun 2010 18:57:24 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 18:57:24 +0000 X-ASF-Spam-Status: No, hits=1.3 required=10.0 tests=AWL,DRUGS_MUSCLE,RCVD_IN_DNSWL_NONE,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (athena.apache.org: local policy) Received: from [83.161.120.155] (HELO popeye1.ggamaur.net) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 18:57:18 +0000 Received: from automat.bufferoverflow.ch (c-833.886.1094.customer.ggaweb.ch [83.161.120.155]) by popeye1.ggamaur.net (8.13.7/8.13.7/Submit) with ESMTP id o51IutYx087457 for <jenniferbrown@example.org>; Tue, 1 Jun 2010 20:56:56 +0200 (CEST) (envelope-from jenniferbrown@example.org) Received: by automat.bufferoverflow.ch (Postfix, from userid 65534) id 2FBA774EC3; Tue, 1 Jun 2010 20:55:32 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.1.7-deb3 (2006-10-05) on automat.bufferoverflow.ch X-Spam-Level: Received: from [83.161.120.155] (faro.bufferoverflow.ch [83.161.120.155]) by automat.bufferoverflow.ch (Postfix) with ESMTP id EA4FC74EC0 for <jenniferbrown@example.org>; Tue, 1 Jun 2010 20:55:27 +0200 (CEST) Message-ID: <jenniferbrown@example.org> Date: Tue, 01 Jun 2010 20:56:42 +0200 From: Roger Meier <jenniferbrown@example.org> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:83.161.120.155) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: jenniferbrown@example.org Subject: Re: C++ THttpServer? References: <jenniferbrown@example.org> <jenniferbrown@example.org> In-Reply-To: <jenniferbrown@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.64 on 83.161.120.155 X-Old-Spam-Status: No, score=-2.7 required=5.0 tests=ALL_TRUSTED,BAYES_00, DRUGS_MUSCLE,RATWARE_GECKO_BUILD autolearn=ham version=3.1.7-deb3 Thanks, Richard! I like to use lighttpd or something comparable like apache or cherokee. The Interface for the Thrift service via http (application/x-thrift) might be Fastcgi, scgi or http. However lighttpd supports all of them. The thing I'm looking for already exists in PHP, Python and Ruby (e.g. THttpServer.py), But I like to provide services written in C++ on a embedded device via http. I look for a counterpart of lib/cpp/src/transport/THttpClient.cpp e.g lib/cpp/src/transport/THttpServer.cpp Does anybody have something like that? Or should I use one of the existing Thrift Http Servers to provide the data via HTTP? Regards Roger Am 833.886.1094:17, schrieb Richard Salz: >> I like to implement a Thrift HTTP Server in C++. > > There's lots of options. One starting point is this table: > http://en.wikipedia.org/wiki/Comparison_of_lightweight_web_servers It > doesn't mention G-Wan, which I find very appealing: http://www.gwan.com > > -- > STSM, WebSphere Appliance Architect > https://www.ibm.com/developerworks/mydeveloperworks/blogs/soma/ > > > From thrift-user-returnjenniferbrown@example.org Tue Jun 01 19:00:26 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 72319 invoked from network); 1 Jun 2010 19:00:26 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 19:00:26 -0000 Received: (qmail 17102 invoked by uid 500); 1 Jun 2010 19:00:25 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 17084 invoked by uid 500); 1 Jun 2010 19:00:25 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 17076 invoked by uid 99); 1 Jun 2010 19:00:25 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 19:00:25 +0000 X-ASF-Spam-Status: No, hits=3.3 required=10.0 tests=DRUGS_MUSCLE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mailout-snc1.facebook.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 19:00:19 +0000 Received: from mail.thefacebook.com ([83.161.120.155]) by pp01.snc1.tfbnw.net (8.14.3/8.14.3) with ESMTP id o51IxcS0005325 (version=TLSv1/SSLv3 cipher=RC4-MD5 bits=128 verify=NOT) for <jenniferbrown@example.org>; Tue, 1 Jun 2010 11:59:38 -0700 Received: from [83.161.120.155] (83.161.120.155) by mail.TheFacebook.com (83.161.120.155) with Microsoft SMTP Server (TLS) id 83.161.120.155; Tue, 1 Jun 2010 11:59:57 -0700 Message-ID: <jenniferbrown@example.org> Date: Tue, 1 Jun 2010 11:59:57 -0700 From: David Reiss <jenniferbrown@example.org> User-Agent: Thunderbird 83.161.120.155 (X11/20100317) MIME-Version: 1.0 To: "jenniferbrown@example.org" <jenniferbrown@example.org> Subject: Re: C++ THttpServer? References: <jenniferbrown@example.org> <jenniferbrown@example.org> <jenniferbrown@example.org> In-Reply-To: <jenniferbrown@example.org> Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7bit X-Proofpoint-Virus-Version: vendor=fsecure engine=1.12.8161:2.4.5,1.2.40,4.0.166 definitions=2010-06-01_02:2010-02-06,2010-06-01,2010-06-01 signatures=0 X-Virus-Checked: Checked by ClamAV on apache.org Someone posted a patch for this a while back. https://issues.apache.org/jira/browse/THRIFT-247 Roger Meier wrote: > Thanks, Richard! > > I like to use lighttpd or something comparable like apache or cherokee. > > The Interface for the Thrift service via http (application/x-thrift) > might be Fastcgi, scgi or http. However lighttpd supports all of them. > > The thing I'm looking for already exists in PHP, Python and Ruby (e.g. > THttpServer.py), But I like to provide services written in C++ on a > embedded device via http. > > I look for a counterpart of lib/cpp/src/transport/THttpClient.cpp > e.g lib/cpp/src/transport/THttpServer.cpp > > Does anybody have something like that? > Or should I use one of the existing Thrift Http Servers to provide the > data via HTTP? > > Regards > > Roger > > > Am 833.886.1094:17, schrieb Richard Salz: >>> I like to implement a Thrift HTTP Server in C++. >> There's lots of options. One starting point is this table: >> http://en.wikipedia.org/wiki/Comparison_of_lightweight_web_servers It >> doesn't mention G-Wan, which I find very appealing: http://www.gwan.com >> >> -- >> STSM, WebSphere Appliance Architect >> https://www.ibm.com/developerworks/mydeveloperworks/blogs/soma/ >> >> >> > From thrift-user-returnjenniferbrown@example.org Tue Jun 01 20:12:35 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 50090 invoked from network); 1 Jun 2010 20:12:35 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 1 Jun 2010 20:12:35 -0000 Received: (qmail 30597 invoked by uid 500); 1 Jun 2010 20:12:34 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 30579 invoked by uid 500); 1 Jun 2010 20:12:34 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 30571 invoked by uid 99); 1 Jun 2010 20:12:34 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 20:12:34 +0000 X-ASF-Spam-Status: No, hits=4.7 required=10.0 tests=DRUGS_MUSCLE,RCVD_IN_DNSWL_NONE,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [83.161.120.155] (HELO popeye1.ggamaur.net) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Jun 2010 20:12:27 +0000 Received: from automat.bufferoverflow.ch (c-833.886.1094.customer.ggaweb.ch [83.161.120.155]) by popeye1.ggamaur.net (8.13.7/8.13.7/Submit) with ESMTP id o51KC5kp034041 for <jenniferbrown@example.org>; Tue, 1 Jun 2010 22:12:06 +0200 (CEST) (envelope-from jenniferbrown@example.org) Received: by automat.bufferoverflow.ch (Postfix, from userid 65534) id 879703292A; Tue, 1 Jun 2010 22:10:41 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.1.7-deb3 (2006-10-05) on automat.bufferoverflow.ch X-Spam-Level: Received: from [83.161.120.155] (faro.bufferoverflow.ch [83.161.120.155]) by automat.bufferoverflow.ch (Postfix) with ESMTP id 36E3BA3 for <jenniferbrown@example.org>; Tue, 1 Jun 2010 22:10:35 +0200 (CEST) Message-ID: <jenniferbrown@example.org> Date: Tue, 01 Jun 2010 22:11:50 +0200 From: Roger Meier <jenniferbrown@example.org> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:83.161.120.155) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: jenniferbrown@example.org Subject: Re: C++ THttpServer? References: <jenniferbrown@example.org> <jenniferbrown@example.org> <jenniferbrown@example.org> <jenniferbrown@example.org> In-Reply-To: <jenniferbrown@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.64 on 83.161.120.155 X-Virus-Checked: Checked by ClamAV on apache.org X-Old-Spam-Status: No, score=-2.7 required=5.0 tests=ALL_TRUSTED,BAYES_00, DRUGS_MUSCLE,RATWARE_GECKO_BUILD autolearn=ham version=3.1.7-deb3 that's exactly what I was looking for! it's already up and running! Thank you very much! Roger and it Am 01.06.2010 20:59, schrieb David Reiss: > Someone posted a patch for this a while back. > > https://issues.apache.org/jira/browse/THRIFT-247 > > Roger Meier wrote: >> Thanks, Richard! >> >> I like to use lighttpd or something comparable like apache or cherokee. >> >> The Interface for the Thrift service via http (application/x-thrift) >> might be Fastcgi, scgi or http. However lighttpd supports all of them. >> >> The thing I'm looking for already exists in PHP, Python and Ruby (e.g. >> THttpServer.py), But I like to provide services written in C++ on a >> embedded device via http. >> >> I look for a counterpart of lib/cpp/src/transport/THttpClient.cpp >> e.g lib/cpp/src/transport/THttpServer.cpp >> >> Does anybody have something like that? >> Or should I use one of the existing Thrift Http Servers to provide the >> data via HTTP? >> >> Regards >> >> Roger >> >> >> Am 833.886.1094:17, schrieb Richard Salz: >>>> I like to implement a Thrift HTTP Server in C++. >>> There's lots of options. One starting point is this table: >>> http://en.wikipedia.org/wiki/Comparison_of_lightweight_web_servers It >>> doesn't mention G-Wan, which I find very appealing: http://www.gwan.com >>> >>> -- >>> STSM, WebSphere Appliance Architect >>> https://www.ibm.com/developerworks/mydeveloperworks/blogs/soma/ >>> >>> >>> >> > > From thrift-user-returnjenniferbrown@example.org Thu Jun 03 23:55:03 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 59920 invoked from network); 3 Jun 2010 23:55:03 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 3 Jun 2010 23:55:03 -0000 Received: (qmail 37381 invoked by uid 500); 3 Jun 2010 23:55:03 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 37338 invoked by uid 500); 3 Jun 2010 23:55:02 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 37330 invoked by uid 99); 3 Jun 2010 23:55:02 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 03 Jun 2010 23:55:02 +0000 X-ASF-Spam-Status: No, hits=0.4 required=10.0 tests=AWL,RCVD_IN_DNSWL_NONE,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (athena.apache.org: local policy) Received: from [83.161.120.155] (HELO popeye1.ggamaur.net) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 03 Jun 2010 23:54:54 +0000 Received: from automat.bufferoverflow.ch (c-833.886.1094.customer.ggaweb.ch [83.161.120.155]) by popeye1.ggamaur.net (8.13.7/8.13.7/Submit) with ESMTP id o53NsT0I085161 for <jenniferbrown@example.org>; Fri, 4 Jun 2010 01:54:30 +0200 (CEST) (envelope-from jenniferbrown@example.org) Received: by automat.bufferoverflow.ch (Postfix, from userid 65534) id 312927515C; Fri, 4 Jun 2010 01:53:02 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.1.7-deb3 (2006-10-05) on automat.bufferoverflow.ch X-Spam-Level: Received: from [83.161.120.155] (faro.bufferoverflow.ch [83.161.120.155]) by automat.bufferoverflow.ch (Postfix) with ESMTP id DD62375031 for <jenniferbrown@example.org>; Fri, 4 Jun 2010 01:52:48 +0200 (CEST) Message-ID: <jenniferbrown@example.org> Date: Fri, 04 Jun 2010 01:54:07 +0200 From: Roger Meier <jenniferbrown@example.org> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:83.161.120.155) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: jenniferbrown@example.org Subject: JSONProtocol: wrong MessageType on Exceptions? Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.64 on 83.161.120.155 X-Old-Spam-Status: No, score=-2.7 required=5.0 tests=ALL_TRUSTED,BAYES_00, RATWARE_GECKO_BUILD autolearn=ham version=3.1.7-deb3 Hi all I did some tests with THttpServer.cpp, JavaScript langiage binding and Tutorial-CppServer using the JSON protocol. I have a strange behavior, that I do not understand. Inside the JSON protocol, the MessageType for exceptions seems to be 2 instead of 3, see below. What do I not understand here? Regards Roger ----------------------------- Request: [1,"calculate",1,0,{"1":{"i32":1},"2":{"rec":{"1":{"i32":1},"2":{"i32":0},"3":{"i32":4}}}}] Response: [1,"calculate",2,0,{"1":{"rec":{"1":{"i32":4},"2":{"str":"Cannot divide by 0"}}}}] enum TMessageType { T_CALL = 1, T_REPLY = 2, T_EXCEPTION = 3, T_ONEWAY = 4 }; From thrift-user-returnjenniferbrown@example.org Fri Jun 04 07:05:01 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 63376 invoked from network); 4 Jun 2010 07:05:01 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 4 Jun 2010 07:05:01 -0000 Received: (qmail 2071 invoked by uid 500); 4 Jun 2010 07:05:00 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 1843 invoked by uid 500); 4 Jun 2010 07:04:58 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 1835 invoked by uid 99); 4 Jun 2010 07:04:57 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Jun 2010 07:04:57 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=FREEMAIL_FROM,HTML_MESSAGE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-ww0-f47.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Jun 2010 07:04:50 +0000 Received: by wwb34 with SMTP id 34so665885wwb.6 for <jenniferbrown@example.org>; Fri, 04 Jun 2010 00:04:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=A+c3pUOmmgnH56mt/PUnAyFGWrbzLatbS2YGTz9e030=; b=MJKKFeY1ez6izkoGVaOdGSOgsZkvfrlS7D1bnlCDRolnqMpgWXjHpj5KJZpTPGvKrH NtEqfMPydovfEhd74FWH+BUK4jZBPdphP7WfP5cEouuIbejf/kMQaf3ReTbkH+Yr5fAU S0qgCPMrjdNm0R1E2RENl70Rt/8oMt0yYVL/s= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=ACzR5N7QfyITbJfOOIg8POLS48lnksOM8O0O6pg4qm1yqRX7VkrqohXCQbGmhGk9Hh rIi/taqG81g6xQQ2QvfMy2eU6LJAVMTM3mzJa4u0cmZeEpJ+zjRrdnsssE3oGxqvtSCd AKKNR3dol8bi7T5smJ+HtWzo1rXqm8L58tqnY= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id y44mr1961819wem.28.1275635067493; Fri, 04 Jun 2010 00:04:27 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Fri, 4 Jun 2010 00:04:27 -0700 (PDT) Date: Fri, 4 Jun 2010 16:04:27 +0900 Message-ID: <jenniferbrown@example.org> Subject: About TException From: thrift thrift <jenniferbrown@example.org> To: jenniferbrown@example.org Content-Type: multipart/alternative; boundary=00163683351e0f9f4904882eef10 --00163683351e0f9f4904882eef10 Content-Type: text/plain; charset=ISO-8859-1 Hi, All, I have a problem about TException. In sample code, we can catch execption as try{ ... } catch (TException &tx) { tx.what() } but the problem is that TException do not have GetType() funciton, so we can not know what kind of execption is occured. It can be TApplicationException, TProtocolException, TTransportException, etc. And also in each kind of execption, there is different sub-type in it. (NOT_OPEN, ALREADY_OPEN, TIMED_OUT, etc.) I found that we can do it seperately as try { transport->open(); } catch (TTransportException& ttx) { printf("Connect failed: %s\n", ttx.what()); } try { printf("testVoid()"); testClient.testVoid(); printf(" = void\n"); } catch (TApplicationException tax) { printf("%s\n", tax.what()); } but Is there some better way that we can handle all kinds of execptions in one try-catch and get exact execption type and execption sub type? Anyone has good ideas about it? Thanks very much. Best Regards, --00163683351e0f9f4904882eef10-- From thrift-user-returnjenniferbrown@example.org Fri Jun 04 12:51:53 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 60400 invoked from network); 4 Jun 2010 12:51:53 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 4 Jun 2010 12:51:53 -0000 Received: (qmail 55758 invoked by uid 500); 4 Jun 2010 12:51:52 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 55109 invoked by uid 500); 4 Jun 2010 12:51:51 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 55101 invoked by uid 99); 4 Jun 2010 12:51:51 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Jun 2010 12:51:51 +0000 X-ASF-Spam-Status: No, hits=-2.3 required=10.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO aussmtpmrkps320.us.dell.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Jun 2010 12:51:41 +0000 X-Loopcount0: from 83.161.120.155 X-IronPort-AV: E=Sophos;i="4.53,361,1272862800"; d="scan'208";a="447907881" Received: from unknown (HELO eus-nas-exch2.equallogic.com) ([83.161.120.155]) by aussmtpmrkps320.us.dell.com with SMTP; 04 Jun 2010 07:51:20 -0500 X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Subject: RE: About TException Date: Fri, 4 Jun 2010 08:51:19 -0400 Message-ID: <jenniferbrown@example.org> In-Reply-To: <jenniferbrown@example.org> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: About TException Thread-Index: AcsDtETaJmReJICcT0e5XdGpIx21+wAL1FKQ References: <jenniferbrown@example.org> From: "James King" <jenniferbrown@example.org> To: <jenniferbrown@example.org> X-Virus-Checked: Checked by ClamAV on apache.org Normally you handle each exception case separately because they mean something different and require different actions. A transport or protocol exception may require you to close and reconnect; whereas the application exception is a command level exception which you need to handle. If looks like you are using C++ from the syntax I believe you could do what you are looking for with RTTI, but I would recommend using separate blocks... the code is more understandable and maintainable that way. I'm not sure about the C++ runtime, but on the C# runtime the TTransportException only carries a string. In my experience so far a TTransportException always means that the connection closed, or a new one failed to open. It would be nice to pack the socket error number into the TTransportException on all platforms. Of course if you really want a GetType() function on TException then you do have access to the source code and can make those modifications for your environment. James E. King, III =20 Senior Software Engineer =20 Dell (EqualLogic) HIT Team (ASM) =20 -----Original Message----- From: thrift thrift [mailto:jenniferbrown@example.org]=20 Sent: Friday, June 04, 2010 3:04 AM To: jenniferbrown@example.org Subject: About TException Hi, All, I have a problem about TException. In sample code, we can catch execption as try{ ... } catch (TException &tx) { tx.what() } but the problem is that TException do not have GetType() funciton, so we can not know what kind of execption is occured. It can be TApplicationException, TProtocolException, TTransportException, etc. And also in each kind of execption, there is different sub-type in it. (NOT_OPEN, ALREADY_OPEN, TIMED_OUT, etc.) I found that we can do it seperately as try { transport->open(); } catch (TTransportException& ttx) { printf("Connect failed: %s\n", ttx.what()); } try { printf("testVoid()"); testClient.testVoid(); printf(" =3D void\n"); } catch (TApplicationException tax) { printf("%s\n", tax.what()); } but Is there some better way that we can handle all kinds of execptions in one try-catch and get exact execption type and execption sub type? Anyone has good ideas about it? Thanks very much. Best Regards, From thrift-user-returnjenniferbrown@example.org Fri Jun 04 17:36:06 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 54767 invoked from network); 4 Jun 2010 17:36:06 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 4 Jun 2010 17:36:06 -0000 Received: (qmail 19658 invoked by uid 500); 4 Jun 2010 17:36:06 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 19629 invoked by uid 500); 4 Jun 2010 17:36:05 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 19621 invoked by uid 99); 4 Jun 2010 17:36:05 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Jun 2010 17:36:05 +0000 X-ASF-Spam-Status: No, hits=-2.1 required=10.0 tests=AWL,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mailout-snc1.facebook.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Jun 2010 17:35:59 +0000 Received: from mail.thefacebook.com ([83.161.120.155]) by pp01.snc1.tfbnw.net (8.14.3/8.14.3) with ESMTP id o54HZHnR010231 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NOT) for <jenniferbrown@example.org>; Fri, 4 Jun 2010 10:35:17 -0700 Received: from sc-hub06.TheFacebook.com (83.161.120.155) by sc-hub03.TheFacebook.com (83.161.120.155) with Microsoft SMTP Server (TLS) id 14.0.694.1; Fri, 4 Jun 2010 10:35:37 -0700 Received: from [83.161.120.155] (83.161.120.155) by mail.TheFacebook.com (83.161.120.155) with Microsoft SMTP Server (TLS) id 83.161.120.155; Fri, 4 Jun 2010 10:35:28 -0700 Message-ID: <jenniferbrown@example.org> Date: Fri, 4 Jun 2010 10:35:27 -0700 From: David Reiss <jenniferbrown@example.org> User-Agent: Thunderbird 83.161.120.155 (X11/20100317) MIME-Version: 1.0 To: "jenniferbrown@example.org" <jenniferbrown@example.org> Subject: Re: JSONProtocol: wrong MessageType on Exceptions? References: <jenniferbrown@example.org> In-Reply-To: <jenniferbrown@example.org> Content-Type: text/plain; charset="ISO-8859-15" Content-Transfer-Encoding: 7bit X-Proofpoint-Virus-Version: vendor=fsecure engine=1.12.8161:2.4.5,1.2.40,4.0.166 definitions=2010-06-04_01:2010-02-06,2010-06-04,2010-06-04 signatures=0 T_EXCEPTION is only used when the server sends a TApplicationException, which happens when it cannot understand the request or has an unexpected problem processing it. For normal user-defined exceptions, the T_REPLY value is used and the response indicates what the result was. --David Roger Meier wrote: > Hi all > > I did some tests with THttpServer.cpp, JavaScript langiage binding and > Tutorial-CppServer using the JSON protocol. I have a strange behavior, > that I do not understand. > > Inside the JSON protocol, the MessageType for exceptions seems to be 2 > instead of 3, see below. > > What do I not understand here? > > Regards > > Roger > > > ----------------------------- > > Request: > [1,"calculate",1,0,{"1":{"i32":1},"2":{"rec":{"1":{"i32":1},"2":{"i32":0},"3":{"i32":4}}}}] > > Response: > [1,"calculate",2,0,{"1":{"rec":{"1":{"i32":4},"2":{"str":"Cannot divide > by 0"}}}}] > > > enum TMessageType { > T_CALL = 1, > T_REPLY = 2, > T_EXCEPTION = 3, > T_ONEWAY = 4 > }; > From thrift-user-returnjenniferbrown@example.org Thu Jun 10 18:51:06 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 64657 invoked from network); 10 Jun 2010 18:51:06 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 10 Jun 2010 18:51:06 -0000 Received: (qmail 40778 invoked by uid 500); 10 Jun 2010 18:51:06 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 40378 invoked by uid 500); 10 Jun 2010 18:51:05 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 40369 invoked by uid 99); 10 Jun 2010 18:51:04 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jun 2010 18:51:04 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-gx0-f175.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jun 2010 18:51:00 +0000 Received: by gxk19 with SMTP id 19so6564gxk.6 for <jenniferbrown@example.org>; Thu, 10 Jun 2010 11:50:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=XH9qbWiZN1NH6K7yOLKrtT3wlJg+KMDHUfOgRkcvHo8=; b=KaYOPmqcGqGDEiWufInJG7bQ9AEyxybURDhOQsf865tZZ2vc82SlBJPTc41Di6YjIe s+Ov9XB8jED9RfrDl+LwB9x5XqO3s/5oohq2R9m9hgLCgOAfYqpd31Inez3QC8nOP2vG 4r7poiUOUPHySm+hbazesbV51eumzLGmXKHrM= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=nB2t5YPM21WN4qtj3W35WfvtvOU/LgaF9w2nlrG2aBHDYTFaERgnYfYtut1302WH3s 1qG0nyrn+1Gef0j+h+fF0JZQpnyO9yjmqOfZu/6/+xlJMGjQ1cr3VZPIxMCkjNNanEPD 4CTjZcdpYQ8bm9PcY5LaLdUeCYO1Ionhz5oe0= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id cc17mr545539qcb.35.1276195838836; Thu, 10 Jun 2010 11:50:38 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Thu, 10 Jun 2010 11:50:38 -0700 (PDT) Date: Thu, 10 Jun 2010 11:50:38 -0700 Message-ID: <jenniferbrown@example.org> Subject: Objective-J / Cappuccino Target From: Fred Potter <jenniferbrown@example.org> To: jenniferbrown@example.org Content-Type: text/plain; charset=ISO-8859-1 Hi, Just wanted to share some work we've been doing on an Objective-J / Cappuccino language target for Thrift. If you've been looking at Cappuccino and have a Thrift addiction like we do, maybe it'll help you out. There's a new language target, library, and tutorial. Most of it is a port of Andrew McGeachie's Cocoa work to Objective-J, plus some new stuff added in to make async calls more natural. The code is up on GitHub here: http://github.com/parallel48/thrift There's a blog post that talks a bit about it here: http://blog.parallel48.com/using-thrift-with-cappuccino I'd love to hear from someone more involved with the project if there would be interest in having this contributed back to the main distribution. Cappuccino is still kind of a niche language, so I don't know how people would feel about that. Fred From thrift-user-returnjenniferbrown@example.org Thu Jun 10 19:04:28 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 67680 invoked from network); 10 Jun 2010 19:04:28 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 10 Jun 2010 19:04:28 -0000 Received: (qmail 63258 invoked by uid 500); 10 Jun 2010 19:04:25 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 63234 invoked by uid 500); 10 Jun 2010 19:04:25 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 62999 invoked by uid 99); 10 Jun 2010 19:04:25 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jun 2010 19:04:25 +0000 X-ASF-Spam-Status: No, hits=-0.1 required=10.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO na3sys009aog106.obsmtp.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with SMTP; Thu, 10 Jun 2010 19:04:18 +0000 Received: from source ([83.161.120.155]) by na3sys009aob106.postini.com ([83.161.120.155]) with SMTP ID jenniferbrown@example.org; Thu, 10 Jun 2010 12:03:57 PDT Received: by vws12 with SMTP id 12so204419vws.18 for <jenniferbrown@example.org>; Thu, 10 Jun 2010 12:03:55 -0700 (PDT) MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id b42mr562859qam.276.1276196633410; Thu, 10 Jun 2010 12:03:53 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Thu, 10 Jun 2010 12:03:53 -0700 (PDT) In-Reply-To: <jenniferbrown@example.org> References: <jenniferbrown@example.org> Date: Thu, 10 Jun 2010 12:03:53 -0700 Message-ID: <jenniferbrown@example.org> Subject: Re: Objective-J / Cappuccino Target From: Bryan Duxbury <jenniferbrown@example.org> To: jenniferbrown@example.org Content-Type: multipart/alternative; boundary=00c09f905ff3fff2320488b1ae55 X-Virus-Checked: Checked by ClamAV on apache.org --00c09f905ff3fff2320488b1ae55 Content-Type: text/plain; charset=ISO-8859-1 If you feel like you'd be a regular maintainer of the contribution, then I definitely would love to see it included in the Thrift core. On the other hand, if you want to contribute it and then wander away, that's not so attractive. Either way, I think it would be great if you opened a JIRA ticket and attached a patch. On Thu, Jun 10, 2010 at 11:50 AM, Fred Potter <jenniferbrown@example.org> wrote: > Hi, > > Just wanted to share some work we've been doing on an Objective-J / > Cappuccino language target for Thrift. If you've been looking at > Cappuccino and have a Thrift addiction like we do, maybe it'll help > you out. > > There's a new language target, library, and tutorial. Most of it is a > port of Andrew McGeachie's Cocoa work to Objective-J, plus some new > stuff added in to make async calls more natural. > > The code is up on GitHub here: > http://github.com/parallel48/thrift > > There's a blog post that talks a bit about it here: > http://blog.parallel48.com/using-thrift-with-cappuccino > > I'd love to hear from someone more involved with the project if there > would be interest in having this contributed back to the main > distribution. Cappuccino is still kind of a niche language, so I > don't know how people would feel about that. > > Fred > --00c09f905ff3fff2320488b1ae55-- From thrift-user-returnjenniferbrown@example.org Thu Jun 10 19:28:46 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 77952 invoked from network); 10 Jun 2010 19:28:46 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 10 Jun 2010 19:28:46 -0000 Received: (qmail 92604 invoked by uid 500); 10 Jun 2010 19:28:46 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 92584 invoked by uid 500); 10 Jun 2010 19:28:46 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 92576 invoked by uid 99); 10 Jun 2010 19:28:46 -0000 Received: from nike.apache.org (HELO nike.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jun 2010 19:28:46 +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 jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-px0-f175.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 10 Jun 2010 19:28:40 +0000 Received: by pxi14 with SMTP id 14so115846pxi.6 for <jenniferbrown@example.org>; Thu, 10 Jun 2010 12:28:17 -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=iZbur99qx7JapeguPI9UCmMD5BDcIs3jKm2eWWot0Ek=; b=EJbQ40puDWniIA17KDNwhwJmQ139XTZxtH1IuXIs/wcQNhLuHrgNo9LACzxb13Dvhr yYTBbAhWsNVgE0HJ1U49S4XDTlTJQo+xollOa++oSQBu3ejgpqU0v6w0U8PuCj/ahHwd E2XE/815mEMpVPYArYbJMUAkn8UCofrt2X1Kw= 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=ePt/vI0OPD2oeUDC2wzyjODlIwqJW0o1+7aUDthi5TUTj6xabD2JRAkqXI0yn1nu3v u4CLkzT3K9CT+3kh/54UJ3FaqLAJgcR+Qv5gJgyX9oRJTKGJMswS+4IEK5tsyxcC3kJz lnJZjLNwBPh+6kY6allmQ/Xmz+CvKeMNMFFaM= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id o27mr456284wfa.226.1276198096216; Thu, 10 Jun 2010 12:28:16 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Thu, 10 Jun 2010 12:28:16 -0700 (PDT) In-Reply-To: <jenniferbrown@example.org> References: <jenniferbrown@example.org> <jenniferbrown@example.org> Date: Thu, 10 Jun 2010 12:28:16 -0700 Message-ID: <jenniferbrown@example.org> Subject: Re: Objective-J / Cappuccino Target From: Fred Potter <jenniferbrown@example.org> To: jenniferbrown@example.org Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Virus-Checked: Checked by ClamAV on apache.org Ok, great! I'll open a ticket on JIRA and submit a patch. I'm happy to keep maintaining it and have several planned improvements. On Thu, Jun 10, 2010 at 12:03 PM, Bryan Duxbury <jenniferbrown@example.org> wrote: > If you feel like you'd be a regular maintainer of the contribution, then = I > definitely would love to see it included in the Thrift core. On the other > hand, if you want to contribute it and then wander away, that's not so > attractive. > > Either way, I think it would be great if you opened a JIRA ticket and > attached a patch. > > On Thu, Jun 10, 2010 at 11:50 AM, Fred Potter <jenniferbrown@example.org> wrote: > >> Hi, >> >> Just wanted to share some work we've been doing on an Objective-J / >> Cappuccino language target for Thrift. =A0If you've been looking at >> Cappuccino and have a Thrift addiction like we do, maybe it'll help >> you out. >> >> There's a new language target, library, and tutorial. =A0Most of it is a >> port of Andrew McGeachie's Cocoa work to Objective-J, plus some new >> stuff added in to make async calls more natural. >> >> The code is up on GitHub here: >> http://github.com/parallel48/thrift >> >> There's a blog post that talks a bit about it here: >> http://blog.parallel48.com/using-thrift-with-cappuccino >> >> I'd love to hear from someone more involved with the project if there >> would be interest in having this contributed back to the main >> distribution. =A0Cappuccino is still kind of a niche language, so I >> don't know how people would feel about that. >> >> Fred >> > From thrift-user-returnjenniferbrown@example.org Fri Jun 11 15:26:51 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 66171 invoked from network); 11 Jun 2010 15:26:51 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 11 Jun 2010 15:26:51 -0000 Received: (qmail 14404 invoked by uid 500); 11 Jun 2010 15:26:51 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 13778 invoked by uid 500); 11 Jun 2010 15:26:50 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 13769 invoked by uid 99); 11 Jun 2010 15:26:50 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Jun 2010 15:26:50 +0000 X-ASF-Spam-Status: No, hits=-0.1 required=10.0 tests=AWL,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-gw0-f47.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Jun 2010 15:26:43 +0000 Received: by gwaa12 with SMTP id a12so843318gwa.6 for <jenniferbrown@example.org>; Fri, 11 Jun 2010 08:26:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:date:message-id :subject:from:to:content-type; bh=b0gHP9q23wEnH3zvjPPjkv7F1yFNst9YIVXmn9DtVAA=; b=OUVwh6NovJCUe5o40eZpbJEzpWFuNHh7JfLDnUKJZg1BG2bYi5ESfH5d2KRliMvDx4 2nZYOskpQ9qKWBhrXLVXQQNFXytVDNV59hFFk0mH4uO8H/RJWyYabBehKURPXqKX6+hV vG1HkkxYITpSqvwIuyU3+9bUNjeQcCO4qp5Bk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:date:message-id:subject:from:to:content-type; b=N3sTlqrqWG1wr5J6+vSBrgpRMrslQ6lU+FZg22uF6dFEdLEC2hKyHxMEgrL5NnAB7b 2PI9cUFX/EYq7g4/3dAkKPc+PK6trb0pu4uMPI+RSnv00ccRKb2+dVT5RoopLbPEGDKS 9pIIBsTma4sWM87YLVt6dUurOPuMU2M6Uv1kk= MIME-Version: 1.0 Received: by 83.161.120.155 with SMTP id p11mr3147574ybd.209.1276269980786; Fri, 11 Jun 2010 08:26:20 -0700 (PDT) Received: by 83.161.120.155 with HTTP; Fri, 11 Jun 2010 08:26:20 -0700 (PDT) Date: Fri, 11 Jun 2010 11:26:20 -0400 Message-ID: <jenniferbrown@example.org> Subject: Serializing large data sets From: Abhay M <jenniferbrown@example.org> To: jenniferbrown@example.org Content-Type: multipart/alternative; boundary=000e0cd761c2d7a0390488c2c253 --000e0cd761c2d7a0390488c2c253 Content-Type: text/plain; charset=ISO-8859-1 Hi, Are there any know concerns with serializing large data sets with Thrift? I am looking to serialize messages with 10-150K records, sometimes resulting in ~30M per message. These messages are serialized for storage. I have been experimenting with Google protobuf and saw this in the documentation ( http://code.google.com/apis/protocolbuffers/docs/techniques.html) - "Protocol Buffers are not designed to handle large messages. As a general rule of thumb, if you are dealing in messages larger than a megabyte each, it may be time to consider an alternate strategy." FWIW, I did switch to delimited write/parse API (Java only) as recommended in the doc and it works well. But, Python protobuf impl lacks this API and is slow. Thanks Abhay --000e0cd761c2d7a0390488c2c253-- From thrift-user-returnjenniferbrown@example.org Fri Jun 11 15:32:45 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 67964 invoked from network); 11 Jun 2010 15:32:45 -0000 Received: from unknown (HELO mail.apache.org) (83.161.120.155) by 83.161.120.155 with SMTP; 11 Jun 2010 15:32:45 -0000 Received: (qmail 22228 invoked by uid 500); 11 Jun 2010 15:32:45 -0000 Delivered-To: jenniferbrown@example.org Received: (qmail 22202 invoked by uid 500); 11 Jun 2010 15:32:45 -0000 Mailing-List: contact jenniferbrown@example.org; run by ezmlm Precedence: bulk List-Help: <mailto:jenniferbrown@example.org> List-Unsubscribe: <mailto:jenniferbrown@example.org> List-Post: <mailto:jenniferbrown@example.org> List-Id: <thrift-user.incubator.apache.org> Reply-To: jenniferbrown@example.org Delivered-To: mailing list jenniferbrown@example.org Received: (qmail 22194 invoked by uid 99); 11 Jun 2010 15:32:45 -0000 Received: from athena.apache.org (HELO athena.apache.org) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Jun 2010 15:32:45 +0000 X-ASF-Spam-Status: No, hits=1.1 required=10.0 tests=AWL,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of jenniferbrown@example.org designates 83.161.120.155 as permitted sender) Received: from [83.161.120.155] (HELO mail-pv0-f175.google.com) (83.161.120.155) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 11 Jun 2010 15:32:39 +0000 Received: by pvc30 with SMTP id 30so655891pvc.6 for <jenniferbrown@example.org>; Fri, 11 Jun 2010 08:32:18 -0700 (PDT) Received: by 83.161.120.155 with SMTP id s19mr1533236rvl.80.1276270338133; Fri, 11 Jun 2010 08:32:18 -0700 (PDT) Received: from David-Engbergs-MacBook-Pro-2.local (c-98-210-156-22.hsd1.ca.comcast.net [83.161.120.155]) by mx.google.com with ESMTPS id q10sm1311745rvp.8.283.161.120.155.32.16 (version=TLSv1/SSLv3 cipher=RC4-MD5); Fri, 11 Jun 2010 08:32:17 -0700 (PDT) Message-ID: <jenniferbrown@example.org> Date: Fri, 11 Jun 2010 08:32:15 -0700 From: Dave Engberg <jenniferbrown@example.org> User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:83.161.120.155) Gecko/20100317 Thunderbird/3.0.4 MIME-Version: 1.0 To: jenniferbrown@example.org CC: Abhay M <jenniferbrown@example.org> Subject: Re: Serializing large data sets References: <jenniferbrown@example.org> In-Reply-To: <jenniferbrown@example.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Evernote uses Thrift for all client-server communications, including third-party API integrations (http://www.evernote.com/about/developer/api/). We serialize messages up to 55MB via Thrift. This is very efficient on the wire, but marshalling and unmarshalling objects can take a fair amount of RAM due to various temporary buffers built into the networking and IO runtime libraries. On 6/11/10 8:26 AM, Abhay M wrote: > Hi, > > Are there any know concerns with serializing large data sets with Thrift? I > am looking to serialize messages with 10-150K records, sometimes resulting > in ~30M per message. These messages are serialized for storage. > > I have been experimenting with Google protobuf and saw this in the > documentation ( > http://code.google.com/apis/protocolbuffers/docs/techniques.html) - > "Protocol Buffers are not designed to handle large messages. As a general > rule of thumb, if you are dealing in messages larger than a megabyte each, > it may be time to consider an alternate strategy." > FWIW, I did switch to delimited write/parse API (Java only) as recommended > in the doc and it works well. But, Python protobuf impl lacks this API and > is slow. > > Thanks > Abhay > > From thrift-user-returnjenniferbrown@example.org Fri Jun 11 16:38:01 2010 Return-Path: <thrift-user-returnjenniferbrown@example.org> Delivered-To: jenniferbrown@example.org Received: (qmail 87760 invoked from network); 11 Jun 2010 16:38:01 -0000 Received: from unknown
{'source': 'Apache Software Foundation Public Mail Archives'}