Return-Path: X-Original-To: apmail-incubator-gora-dev-archive@minotaur.apache.org Delivered-To: apmail-incubator-gora-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6F03D9BDE for ; Mon, 23 Jan 2012 18:05:08 +0000 (UTC) Received: (qmail 15815 invoked by uid 500); 23 Jan 2012 18:05:08 -0000 Delivered-To: apmail-incubator-gora-dev-archive@incubator.apache.org Received: (qmail 15790 invoked by uid 500); 23 Jan 2012 18:05:07 -0000 Mailing-List: contact gora-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: gora-dev@incubator.apache.org Delivered-To: mailing list gora-dev@incubator.apache.org Received: (qmail 15782 invoked by uid 99); 23 Jan 2012 18:05:07 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 23 Jan 2012 18:05:07 +0000 X-ASF-Spam-Status: No, hits=1.5 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: domain of enis.soz@gmail.com designates 74.125.83.47 as permitted sender) Received: from [74.125.83.47] (HELO mail-ee0-f47.google.com) (74.125.83.47) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 23 Jan 2012 18:04:59 +0000 Received: by eekd41 with SMTP id d41so1087745eek.6 for ; Mon, 23 Jan 2012 10:04:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=mVOzQSqtUtRoqbLCIuoUEd920aYwXCgANkTl3bYtPj4=; b=RV5/t4odMCemlOH9s7UResccJU4qaVOnS7YArKqDKM0t+79gBF1zJm9L0CF/QO0ssv DMiSfCi2Ndlditps+HLlNQAxCzio3IaAsiDOY6wOCFlwE1v/tbq+XbmXuTnAwekdv7z/ mrB6zAxnaq9BS0PbjDq3mWeEKRu80MIvRZLyU= Received: by 10.14.2.67 with SMTP id 43mr3228119eee.97.1327341879330; Mon, 23 Jan 2012 10:04:39 -0800 (PST) MIME-Version: 1.0 Received: by 10.213.8.4 with HTTP; Mon, 23 Jan 2012 10:04:18 -0800 (PST) In-Reply-To: References: From: =?UTF-8?Q?Enis_S=C3=B6ztutar?= Date: Mon, 23 Jan 2012 10:04:18 -0800 Message-ID: Subject: Re: Difference between Avro SpecificCompiler & GoraCompiler To: gora-dev@incubator.apache.org Content-Type: multipart/alternative; boundary=0016364269553688c204b735dd21 X-Virus-Checked: Checked by ClamAV on apache.org --0016364269553688c204b735dd21 Content-Type: text/plain; charset=UTF-8 Hi, GoraCompiler is the class which adds gora specific class methods and fields to the compiled classes, so that they implement the Persistent interface, etc. At the time of developing for the first version of Gora, the SpecificCompiler class was not extendable and we did not want to deal with patching Avro, so we just fetched the code for the Specific compiler, and changed it, which I admit, is a huge hack. Now that Avro's specific compiler seems to have changed to use Velocity, it might be more extensible, but I doubt that, we can just extend it without needing to change the code. So, I am +1 for updating the code for Avro, but the we might need to update GoraCompiler as well. Thanks, Enis On Sat, Jan 21, 2012 at 10:13 AM, Lewis John Mcgibbney < lewis.mcgibbney@gmail.com> wrote: > Hi Guys, > > Been messing around with the compiler today and got curious about some > things. > > 1) As this thread states, what is the specific difference between our own > compiler [1] implementation and the Avro SpecificCompiler [2] we have a > choice of using via bin/gora specificcompiler? > 2) I was going to suggest that we upgrade to Avro version 1.6.1 (most > recently tagged stable), as the project seems to be more matured, there has > also been some code refactoring going on. > 3) I've attached a link [3] to the current SpecificCompiler class within > the recent 1.6.1 release, even this class has increased in lines of code by > around 50%, therefore I think there is more functionality to be had from > upgrading. > > The reason I'm asking is that I've been working on GORA-27, however I > wonder if it is better to work towards an implementation for Avro, and we > could then rely on that implementation rather than writing one solely for > Gora which can only be used here? This story, however falls through if > there is a strong case for us maintaining our own compiler implementation. > > What do you guys think? > > [1] > > http://svn.apache.org/viewvc/incubator/gora/trunk/gora-core/src/main/java/org/apache/gora/compiler/GoraCompiler.java?view=markup > [2] > > http://svn.apache.org/viewvc/avro/tags/release-1.3.3/lang/java/src/java/org/apache/avro/specific/SpecificCompiler.java?view=markup > [3] > > http://svn.apache.org/viewvc/avro/tags/release-1.6.1/lang/java/compiler/src/main/java/org/apache/avro/compiler/specific/SpecificCompiler.java?view=markup > -- > *Lewis* > --0016364269553688c204b735dd21--