Actually, returning a constant from a hashCode function is pretty goofy.

In the String implementation 31 is a *factor*.



On Tue, Sep 22, 2015 at 4:25 PM, Jinfeng Ni <jinfengn...@gmail.com> wrote:

> For question 5, this link [1] probably explains why 31 is used:
>
>
> [1]
> http://stackoverflow.com/questions/299304/why-does-javas-hashcode-in-string-use-31-as-a-multiplier
>
>
> On Tue, Sep 22, 2015 at 10:05 AM, Abdel Hakim Deneche
> <adene...@maprtech.com> wrote:
> > Question 3:
> > I would assume getWriterOperatorType() has a similar meaning to
> > getReaderOperatorType() but it's not used anywhere in Drill. That would
> > explain why JsonFormatPlugin throws an UnsupportedOperationException
> >
> > Question 4:
> > supportsPushDown() is about "projection" push down and not filter push
> down
> >
> > Question 5:
> > I would say, purely random.
> >
> > On Fri, Sep 18, 2015 at 11:48 AM, Edmon Begoli <ebeg...@gmail.com>
> wrote:
> >
> >> Thanks, Abdel.
> >> I will use your answers to guide my development, but I will also
> contribute
> >> them back as a javadoc.
> >>
> >> On Fri, Sep 18, 2015 at 2:39 PM, Abdel Hakim Deneche <
> >> adene...@maprtech.com>
> >> wrote:
> >>
> >> > Question 2:
> >> > to my knowledge (what I've found digging through the code). Each
> Operator
> >> > has a unique OperatorType that is used when writing the operator's
> stats
> >> in
> >> > the profile. So in this case, Each FormatPlugin implementation should
> >> have
> >> > a corresponding unique OperatorType added to CoreOperatorType.
> >> >
> >> > I will get back to you after I get more information about the
> remaining
> >> > questions.
> >> >
> >> > Thanks
> >> >
> >> > On Thu, Sep 17, 2015 at 8:14 PM, Edmon Begoli <ebeg...@gmail.com>
> wrote:
> >> >
> >> > > Hello all,
> >> > >
> >> > > Could some please with answering my questions 2-5 below?
> >> > >
> >> > > Thank you,
> >> > > Edmon
> >> > >
> >> > > On Wednesday, September 16, 2015, Edmon Begoli <ebeg...@gmail.com>
> >> > wrote:
> >> > >
> >> > > > I am studying the JSON Storage plugin.
> >> > > >
> >> > > > Can someone please answer what is the meaning (or intent) of the
> >> > > following
> >> > > > methods:
> >> > > >
> >> > > > # Question 1:
> >> > > > # This is from inside the getter for RecordWriter. What is
> >> major/minor
> >> > > > fragment id?
> >> > > > String fragmentId = String.format("%d_%d",
> >> handle.getMajorFragmentId(),
> >> > > > handle.getMinorFragmentId());
> >> > > >
> >> > > >
> >> > > > # Question 2:
> >> > > > # Speficially, what is Operator Type, and what is JSON specific
> about
> >> > it?
> >> > > > public int getReaderOperatorType() {
> >> > > >     return CoreOperatorType.JSON_SUB_SCAN_VALUE;
> >> > > >   }
> >> > > >
> >> > > > # Question 3:
> >> > > > # same, but for writer
> >> > > >   @Override
> >> > > >   public int getWriterOperatorType() {
> >> > > >     throw new UnsupportedOperationException();
> >> > > >   }
> >> > > >
> >> > > > # Question 4:
> >> > > > # I generally understand the concept of predicate pushdown, but is
> >> this
> >> > > > about predicate push down or something else?
> >> > > > # How does one implement a push down for storage format?
> >> > > >   @Override
> >> > > >   public boolean supportsPushDown() {
> >> > > >
> >> > > > # Question 5:
> >> > > > # Is this int value of 31 purely randomly selected, or is there an
> >> > index
> >> > > > somewhere?
> >> > > >   @Override
> >> > > >   public int hashCode() {
> >> > > >       return 31;
> >> > > >   }
> >> > > >
> >> > > >
> >> > > >
> >> > > >
> >> > >
> >> >
> >> >
> >> >
> >> > --
> >> >
> >> > Abdelhakim Deneche
> >> >
> >> > Software Engineer
> >> >
> >> >   <http://www.mapr.com/>
> >> >
> >> >
> >> > Now Available - Free Hadoop On-Demand Training
> >> > <
> >> >
> >>
> http://www.mapr.com/training?utm_source=Email&utm_medium=Signature&utm_campaign=Free%20available
> >> > >
> >> >
> >>
> >
> >
> >
> > --
> >
> > Abdelhakim Deneche
> >
> > Software Engineer
> >
> >   <http://www.mapr.com/>
> >
> >
> > Now Available - Free Hadoop On-Demand Training
> > <
> http://www.mapr.com/training?utm_source=Email&utm_medium=Signature&utm_campaign=Free%20available
> >
>

Reply via email to