Similar to field injection using CDI, except that it will be part of run
time compilation rather than based on reflection.  So basically something
similar to @Inject ByteBuf buffer

Then the execution engine manages the buffer creation.


On Tue, Mar 18, 2014 at 12:05 AM, Timothy Chen <[email protected]> wrote:

> Mind clarifying what does psuedo injection means?
>
> Thanks,
>
> Tim
>
> > On Mar 17, 2014, at 10:18 PM, "Jacques Nadeau" <[email protected]>
> wrote:
> >
> >
> > -----------------------------------------------------------
> > This is an automatically generated e-mail. To reply, visit:
> > https://reviews.apache.org/r/18376/#review37537
> > -----------------------------------------------------------
> >
> > Ship it!
> >
> >
> > Looks good.  One thing I'd like to address as a separate issue...
> Jinfeng, can you please open a new JIRA to move away from using wrapped
> buffers.  This is a dangerous approach as these buffers are big endian
> versus Drill's native format of little endian.  Additionally, this requires
> us to pull data on heap to execute these functions.  We should move to an
> approach where anyone who wants a buffer uses pseudo-injection to get
> access to buffers and the context is responsible for cleaning things up.
> >
> > - Jacques Nadeau
> >
> >
> >> On March 11, 2014, 11:59 p.m., Jinfeng Ni wrote:
> >>
> >> -----------------------------------------------------------
> >> This is an automatically generated e-mail. To reply, visit:
> >> https://reviews.apache.org/r/18376/
> >> -----------------------------------------------------------
> >>
> >> (Updated March 11, 2014, 11:59 p.m.)
> >>
> >>
> >> Review request for drill and Mehant Baid.
> >>
> >>
> >> Repository: drill-git
> >>
> >>
> >> Description
> >> -------
> >>
> >>
> >> We add the support of some commonly used String functions and Math
> functions (over int, floating-point number).
> >>
> >> 1. like
> >> 2. similar
> >> 3. regexp_replace
> >> 4. char_length
> >> 4. oct_length
> >> 5. bit_length
> >> 6. position
> >> 7. strops
> >> 8. lower
> >> 9. upper
> >> 10. initcap
> >> 11. substring/substr
> >> 12. left
> >> 13. right
> >> 14. replace
> >> 15.lpad
> >> 16 rpad
> >> 17. ltrim
> >> 18. rtrim
> >> 19. concat.
> >>
> >> Math : abs, ceil, floor, sqrt, sign, trunc.
> >>
> >>
> >> Diffs
> >> -----
> >>
> >>
>  
> common/src/main/java/org/apache/drill/common/expression/OutputTypeDeterminer.java
> 69acf12
> >>
>  common/src/main/java/org/apache/drill/common/expression/fn/MathFunctions.java
> ee3a099
> >>  exec/java-exec/src/main/codegen/config.fmpp 8f1060a
> >>  exec/java-exec/src/main/codegen/data/MathFunc.tdd PRE-CREATION
> >>  exec/java-exec/src/main/codegen/templates/MathFunctions.java
> PRE-CREATION
> >>
>  
> exec/java-exec/src/main/java/org/apache/drill/exec/expr/fn/impl/CharSubstring.java
> f991a41
> >>
>  
> exec/java-exec/src/main/java/org/apache/drill/exec/expr/fn/impl/MathFunctions.java
> f4e2060
> >>
>  
> exec/java-exec/src/main/java/org/apache/drill/exec/expr/fn/impl/RegexpUtil.java
> PRE-CREATION
> >>
>  
> exec/java-exec/src/main/java/org/apache/drill/exec/expr/fn/impl/StringFunctionUtil.java
> PRE-CREATION
> >>
>  
> exec/java-exec/src/main/java/org/apache/drill/exec/expr/fn/impl/StringFunctions.java
> PRE-CREATION
> >>
>  
> exec/java-exec/src/test/java/org/apache/drill/exec/physical/impl/TestSimpleFunctions.java
> f6a8096
> >>
>  
> exec/java-exec/src/test/java/org/apache/drill/exec/physical/impl/TestStringFunctions.java
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testCharLength.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testConcat.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testLeft.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testLike.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testLower.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testLpad.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testLtrim.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testPosition.json
> PRE-CREATION
> >>
>  exec/java-exec/src/test/resources/functions/string/testRegexpReplace.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testReplace.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testRight.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testRpad.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testRtrim.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testSimilar.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testSubstr.json
> PRE-CREATION
> >>  exec/java-exec/src/test/resources/functions/string/testUpper.json
> PRE-CREATION
> >>
> >> Diff: https://reviews.apache.org/r/18376/diff/
> >>
> >>
> >> Testing
> >> -------
> >>
> >> A JUnit test case is added, to test the string functions.
> >>
> >>
> >> Thanks,
> >>
> >> Jinfeng Ni
> >
>

Reply via email to