drill-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jason Altekruse <altekruseja...@gmail.com>
Subject Re: Questions for Setting up Dev Environment
Date Thu, 15 Jan 2015 01:12:42 GMT
Hello Ankur!

I'm sorry for your trouble getting started with Drill. I did not realize
how out of date that wiki page was. The reference interpreter was a proof
of concept execution engine that was developed early on in Drill to
validate some design decisions before beginning the actual project. While
we did maintain it for a little while alongside the full implementation of
the execution engine, it has be deprecated for some time now. If you want
to try to run some test queries on Drill I would recommend starting
sqlline, which is a bundled sql shell that leverages Drills JDBC driver.
The guide below show how to do it with a pre-built binary.

https://cwiki.apache.org/confluence/display/DRILL/Apache+Drill+in+10+Minutes

You can also run sqlline after a build of Drill. To build, run "mvn clean
install -DskipTests" from the root of the project. The finished build will
be in: distribution/target/

You are correct that java-exec is where the development has been happening
by and large. There are few pluggable components defined in the other
modules, as well as a few system interface and logical constructs (such as
our expression parser/AST) in the common submodule.

For debugging during development we mostly write unit tests that submit sql
queries to test different components of the engine. The testing
infrastructure is available from any class that inherits from
BestTestQuery. Here is one example:

https://github.com/apache/drill/blob/35a350fd381d839b3a51587092779fd822a19734/exec/java-exec/src/test/java/org/apache/drill/TestExampleQueries.java

We recently added a unified system for creating tests that run queries and
verify the full result set against a baseline. This has previously be
re-created in a number of the test classes in various forms, so we now have
one unified framework to give a single interface to these tests. This class
contains some example of the usage of the new framework.

https://github.com/apache/drill/blob/df56954771950cd850ecae10404007d11d9241cb/exec/java-exec/src/test/java/org/apache/drill/TestFrameworkTest.java

-Jason



On Wed, Jan 14, 2015 at 10:53 AM, Ankur Garg <ankurgarg9@gmail.com> wrote:

> Hi All ,
>
> I joined the Apache Drill community recently and want to contribute to
> Drill as a developer .
>
> As a first step, I am setting up  my dev environment . I see that
>
> https://cwiki.apache.org/confluence/display/DRILL/Setting+Up+Your+Development+Environment
>
> says that the page is Outdated and needs to be updated .
>
> Specifically , I couldn't get this( *I cant locate ReferenceInterpreter
> project in the workspace . Although I could see a donuts.json file
> under exec/java-exec . Is the ReferenceInterpreter renamed to
> exec/java-exec ?? *)  :
>
> Additionally , is there somewhere i can find the latest update info for
> setting up my dev environment . I will then update this page with those  so
> that new contributors do not face any hassle :)
> *Executing the ReferenceInterpreter from ref project:*
>
> *Copy "ref\src\ test\resources\donuts.json" to
> "ref\src\ main\resources\donuts.json"*
>
> *First time:*
>
> *Right click on "ReferenceInterpreter", select 'Run As -> Run
> Configurations'.*
>
> *Select Java Application and New.*
>
> *In Main tab:*
>
> *Project: ref*
>
> *Main class: org.apache.drill.exec.ref.ReferenceInterpreter*
>
> *In Arguments tab:*
>
> *Program arguments: "src/test/resources/simple_plan.json" (with quotes).*
>
> *Click 'Run'.*
>
> *Next time onwards:*
>
> *Right click on "ReferenceInterpreter", select 'Run As -> Java
> Application'.*
>
>
> Looking for help .
>
>
> Regards
>
> Ankur
>

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