Home | About | Sematext search-lucene.com search-hadoop.com
 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...).


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.