Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
Drill >> mail # dev >> Another pair of eyes...


Copy link to this message
-
Re: Another pair of eyes...
On May 8, 2013, at 9:31 PM, Lisen Mu <[EMAIL PROTECTED]> wrote:

> I'm not familiar with the optiq inside but seems it has something to do with your last projection's ref. What's the purpose of  getHolder()?
>
> Maybe not the right thing to do, but the attached patch could produce output without nesting(but throws exceptions in some test...).

Lisen,

Your observations & patch helped get me through my mental block. I realized that "ref" is necessary for the "scan" operator, but not others. Therefore I made sure that each operator's JSON output the logical row type of the corresponding Optiq relational operator. Scan outputs records with a single field called _MAP; project contains whatever field(s) they asked for; filter outputs the same row type as its input; and so forth.

I was able to obsolete the "holder" notion, and some other nasty duck tape [ https://github.com/julianhyde/incubator-drill/commit/375dbf03157924860bfc6b3c7e1084cd91faa61d ]. I also implemented aggregation over the weekend [ https://github.com/julianhyde/incubator-drill/commit/febcb702c224f8aa148377272eb88929cfa15ee7 ].

Thanks for your help.

Julian
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB