Fair enough. I suggest that you write lots of unit tests of the form “assert that PigLatin statement X becomes Drill logical query Y” and we will be able to re-use those tests if we change the translator. (Good unit tests make well-defined components.)
On Oct 9, 2014, at 12:25 PM, Yash Sharma <[email protected]> wrote: > Thanks for the tips Julian. It would be great to see the whole heavy > weight parsing at Optiq's end. > > For now I think I should develop this current patch to have a basic > PigLatin support inbuilt in Drill until Optiq's reinforcement comes in. > > I will implement your solution along with aditya's solution for the other > error and try to bring this patch to a cleaner state. I will post a clean > review board request. > Thoughts? > > . > > > On Thu, Oct 9, 2014 at 1:51 AM, Julian Hyde <[email protected]> wrote: > >> On Oct 8, 2014, at 12:12 PM, Yash Sharma <[email protected]> wrote: >> >>>> Have used couple of Hacks for it though: >>>> - Downgrading Sqlline to 1.0.9 to get Jline 1.0 back (which is >> compatible >>>> with Pig) (to be fixed at Pig's end) >> >> I have a solution to that one. >> >> I encountered a very similar issue when I was trying to add an updated >> sqlline into Hive. I created a fork of jline called jline2 that can >> co-exist with jline. (Actually it’s just a re-packagaging with a different >> maven artifactId.) And I created a version of sqlline that depends on it. >> >> See https://github.com/julianhyde/hive/commits/sqlline-8 and >> https://github.com/julianhyde/jline2. >> >>>> Also added a note to Pig's JIRA: >>>> https://issues.apache.org/jira/browse/PIG-3851 >>>> - Removed exec/jdbc-all module : Was throwing Obscufation Error >>>> >>>> >>>> Couple of things done for now: >>>> - extending the PigServer to expose the Pig's logical plan (Hacky for >> now. >>>> Need to find better solution) >>>> - converting Pig logical plan to Drill logical plan using the >>>> LogicalPlanBuilder >>>> - Exposing via Drill Rest Interface >>>> - Only supports Pig Load and Store operators for now. >> >> At some point I plan to create a PigLatin front-end to Optiq (see >> https://issues.apache.org/jira/browse/PIG-4107). Then it would be >> straightforward to convert Optiq to Drill. >> >> This would be much less hacky than what you propose above. >> >> Julian
