asterixdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Taewoo Kim <wangs...@gmail.com>
Subject Re: Debugging source code
Date Fri, 29 Jul 2016 16:29:20 GMT
@Michael: it's good to know this. I will try and let you know.

Best,
Taewoo

On Fri, Jul 29, 2016 at 9:25 AM, Michael Blow <mblow.apache@gmail.com>
wrote:

> I have a change propose to Gerrit which enables debugging the generated
> functions by way of the original java files:
>
> https://asterix-gerrit.ics.uci.edu/#/c/1030/
>
> It has been verified in IntelliJ IDEA, but AFAIK Eclipse has not yet been
> tested.
>
> Thanks,
>
> -MDB
>
> On Thu, Jul 21, 2016 at 3:14 PM Vignesh Raghunathan <
> vignesh.raghunathan90@gmail.com> wrote:
>
> > Hi,
> >
> > Thank you for the response. I just wanted to bump this thread up for more
> > responses. Any detail would be very helpful.
> >
> > Regards,
> > Vignesh
> >
> > > On Jul 16, 2016, at 7:44 AM, Wail Alkowaileet <wael.y.k@gmail.com>
> > wrote:
> > >
> > > AFAIK functions (scalar in particular) are generated.
> > >
> > > On Jul 16, 2016 00:19, "Vignesh Raghunathan" <
> > > vignesh.raghunathan90@gmail.com <mailto:
> vignesh.raghunathan90@gmail.com>>
> > wrote:
> > >
> > >> Hi,
> > >>
> > >> I am trying to step through some of the function descriptor code. For
> > >> instance, I launched an AsterixDB instance via
> > >> AsterixHyracksIntegrationUtil, placed a breakpoint in
> > >>
> > >>
> >
> org.apache.asterix.runtime.evaluators.constructors.ATimeConstructorDescriptor.createEvaluatorFactory(...).new
> > >> IScalarEvaluatorFactory() {...}.createScalarEvaluator(...).new
> > >> IScalarEvaluator() {...}.evaluate(IFrameTupleReference, IPointable)
> > >>
> > >> and ran the query
> > >>
> > >> let $v := time(“12:23:23”)
> > >> return $v
> > >>
> > >> However, execution doesn’t stop at the breakpoint. My questions are as
> > >> follows:
> > >>
> > >> 1. http://sigmod.github.io/papers/socc15-final153.pdf <
> > >> http://sigmod.github.io/papers/socc15-final153.pdf <
> > http://sigmod.github.io/papers/socc15-final153.pdf>> mentions runtime
> > >> artifacts called evaluators for function expressions. Is the evaluate
> > >> function mentioned above part of an evaluator for the time
> constructor?
> > >>
> > >> 2. Is a separate JVM launched for each virtual node controller?
> > >>
> > >> 3. How can I debug a task that is scheduled to run in a particular
> node
> > >> controller?
> > >>
> > >> As an aside, http://sigmod.github.io/papers/socc15-final153.pdf <
> > http://sigmod.github.io/papers/socc15-final153.pdf> <
> > >> http://sigmod.github.io/papers/socc15-final153.pdf> mentions that
> > >> translation between logical functions and evaluators happen during the
> > job
> > >> generation phase. Does that mean the rule based physical optimization
> > phase
> > >> is skipped for functions?
> > >>
> > >> I am also not able to figure out where the function evaluators are
> > >> actually called in code. Where can I find them?
> > >>
> > >> Thanks,
> > >> Vignesh
> > >>
> > >>
> > >>> On Jul 7, 2016, at 2:23 AM, Mike Carey <dtabass@gmail.com> wrote:
> > >>>
> > >>> Vignesh,
> > >>>
> > >>> Count would actually be a particularly bad example to start with.
> :-)
> > >> Aggregate functions (count, min, max, sum, avg) are not like other
> > >> functions - they are special and more complicated / very different.
> > >> Instead, you should look at simple(r) functions like almost anything
> > else
> > >> described at
> > >> https://asterixdb.apache.org/docs/0.8.8-incubating/aql/functions.html
> .
> > >>>
> > >>>
> > >>> Cheers,
> > >>>
> > >>> Mike
> > >>>
> > >>> On 7/6/16 11:29 AM, Xikui Wang wrote:
> > >>>> Hi Vignesh,
> > >>>>
> > >>>> There is an entrance class called: AsterixHyracksIntegrationUtil.
> You
> > >> can
> > >>>> find it under: org.apache.asterix.api.common. The main method in
> this
> > >> class
> > >>>> enables you to launch a local instance for debugging. From my own
> > >>>> experience, QueryTranslator will be a good start point to trace
the
> > >> process.
> > >>>>
> > >>>> Best,
> > >>>> Xikui
> > >>>>
> > >>>> On Wed, Jul 6, 2016 at 11:16 AM, Vignesh Raghunathan <
> > >>>> vignesh.raghunathan90@gmail.com> wrote:
> > >>>>
> > >>>>> Hi,
> > >>>>>
> > >>>>> I've been trying to figure out how functions are implemented
under
> > the
> > >> hood
> > >>>>> in AsterixDB. For example, I would like to know what happens
when
> the
> > >> aql
> > >>>>> statement count([1,2,3]) is executed.
> > >>>>>
> > >>>>> I tried to set up remote debugging in eclipse to step through
the
> > code.
> > >>>>> However, I'm not sure what to change to launch an asterixdb
> instance
> > in
> > >>>>> debug mode. Is there a way to do it?
> > >>>>>
> > >>>>> Thanks,
> > >>>>> Vignesh
> >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message