If you are mainly focusing on testing a UDF, my recommendation would be to keep the UDF you are working on in its own maven project. Build a combined source/class jar, and copy it into the jars directory, replacing the old one each time. If you are rebuilding Drill, or even just java-exec each time you make a change, that will be too time consuming.
On Sun, Sep 28, 2014 at 6:09 PM, Ted Dunning <[email protected]> wrote: > Ahhh... apparently much of the confusion was due to my complex compile test > steps. I was untarring into a slightly different directory than I thought. > > Never mind. > > Related to this, does anybody have any hints for fast edit/test cycles? > Currently, I am using 1980's level of methods of using mvn to compile and > sqlline to test. Seems antiquated. What is the better way in the presence > of code generation and such? > > > On Sun, Sep 28, 2014 at 6:03 PM, Ted Dunning <[email protected]> > wrote: > > > > > For reference, my sqlline.log file is at > > > > https://gist.github.com/tdunning/c9509b3f3a69a99faeaf > > > > The query I was trying to run was > > > > SELECT hLookup(last_name, cast(first_name as varchar(30)), cast(full_name > > as varchar(30)))as x, full_name FROM cp.`employee.json` limit 2; > > > > This query: > > > > SELECT hLookup(last_name, first_name, full_name) as x, full_name FROM > > cp.`employee.json` limit 2; > > > > and many other minor variations produced exactly the same error. > > > > > > > > On Sun, Sep 28, 2014 at 5:51 PM, Ted Dunning <[email protected]> > > wrote: > > > >> > >> I am trying to write a simple UDF and am hitting some odd road-blocks. > >> > >> The ultimate error that I get is this: > >> > >> Query failed: Screen received stop request sent. Line 347, Column 44: > >> Unknown variable or type "table" [990f5e97-3faa-42b7-9557-1a9416fd6321] > >> > >> > >> My code is at https://gist.github.com/tdunning/22432450b9e27948b6b5 > >> > >> The basic idea is that I want to define a function with three arguments, > >> all strings. > >> > >> One odd thing that I see and don't understand is that in the generated > >> code in the log, I see my code, but with NullableIntHolder as the type > for > >> my variables: > >> 279: //---- start of eval portion of hLookup function. > >> ----// > >> 280: complexWriter15 .setPosition((outIndex)); > >> 281: { > >> 282: > >> org.apache.drill.exec.vector.complex.writer.BaseWriter.ComplexWriter > >> writer = complexWriter15; > >> 283: NullableIntHolder table = out4; > >> 284: NullableIntHolder columns = out9; > >> 285: NullableIntHolder key = out14; > >> 286: > >> 287: HbaseLookup$Lookup_eval: { > >> 288: System.out.printf("key = %s\n", key.toString()); > >> 289: } > >> 290: > >> 291: } > >> 292: if (!complexWriter15 .ok()) { > >> 293: complexWriter15 .reset(); > >> 294: return false; > >> 295: } > >> 296: //---- end of eval portion of hLookup function. > ----// > >> > >> I am compiling Drill by using "mvn clean install -DskipTests" at the > >> top-level. Is there a special incarnation to remove old versions of my > UDF? > >> > >> > >> > > > -- Steven Phillips Software Engineer mapr.com
