Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
4672efb
array support for expression language for multi-value string columns
clintropolis May 2, 2019
907c550
fix tests?
clintropolis May 2, 2019
5c997db
fixes
clintropolis May 2, 2019
cefe3e7
more tests
clintropolis May 3, 2019
a46a9a2
fixes
clintropolis May 4, 2019
81aadce
cleanup
clintropolis May 8, 2019
b9410e9
more better, more test
clintropolis May 9, 2019
97c38d4
ignore inspection
clintropolis May 14, 2019
d323c25
Merge remote-tracking branch 'upstream/master' into expr-multi-val-st…
clintropolis May 14, 2019
f3fff98
license
clintropolis May 14, 2019
81055b3
license fix
clintropolis May 14, 2019
54e5e67
inspection
clintropolis May 15, 2019
fd67f0e
remove dumb import
clintropolis May 15, 2019
a1bb13d
Merge remote-tracking branch 'upstream/master' into expr-multi-val-st…
clintropolis May 21, 2019
94efb2c
more better
clintropolis May 22, 2019
ec5c420
some comments
clintropolis May 22, 2019
3371505
add expr rewrite for arrayfn args for more magic, tests
clintropolis May 24, 2019
e6bd16b
test stuff
clintropolis May 24, 2019
f210ba6
more tests
clintropolis May 24, 2019
e9d223e
fix test
clintropolis May 24, 2019
2387597
fix test
clintropolis May 25, 2019
17ada78
Merge remote-tracking branch 'upstream/master' into expr-multi-val-st…
clintropolis May 30, 2019
e4aa0f5
castfunc can deal with arrays
clintropolis May 30, 2019
db6c470
needs more empty array
clintropolis May 30, 2019
364ddb1
more tests, make cast to long array more forgiving
clintropolis May 31, 2019
0222302
Merge remote-tracking branch 'upstream/master' into expr-multi-val-st…
clintropolis Jun 1, 2019
1e24296
refactor
clintropolis Jun 1, 2019
74e3aaa
simplify ExprMacro Expr implementations with base classes in core
clintropolis Jun 2, 2019
c0cc6e1
oops
clintropolis Jun 2, 2019
82f92a9
Merge remote-tracking branch 'upstream/master' into expr-multi-val-st…
clintropolis Jun 2, 2019
6d6186b
more test
clintropolis Jun 3, 2019
47e4231
use Shuttle for Parser.flatten, javadoc, cleanup
clintropolis Jun 3, 2019
7b062ee
fixes and more tests
clintropolis Jun 4, 2019
b832cf9
unused import
clintropolis Jun 4, 2019
d046e3d
fixes
clintropolis Jun 4, 2019
518d8fb
Merge remote-tracking branch 'upstream/master' into expr-multi-val-st…
clintropolis Jun 4, 2019
0ea0f71
javadocs, cleanup, refactors
clintropolis Jun 5, 2019
7dabcd1
fix imports
clintropolis Jun 5, 2019
61f03b4
more javadoc
clintropolis Jun 5, 2019
bfce040
more javadoc
clintropolis Jun 5, 2019
e591cae
more
clintropolis Jun 5, 2019
5e39399
more javadocs, nonnullbydefault, minor refactor
clintropolis Jun 6, 2019
e880a84
markdown fix
clintropolis Jun 6, 2019
ebfb2ce
adjustments
clintropolis Jun 6, 2019
4bfc721
more doc
clintropolis Jun 6, 2019
9ed867c
move initial filter out
clintropolis Jun 6, 2019
ee304ae
docs
clintropolis Jun 7, 2019
520cac9
map empty arg lambda, apply function argument validation
clintropolis Jun 7, 2019
ff167d2
check function args at parse time instead of eval time
clintropolis Jun 7, 2019
d0bd362
more immutable
clintropolis Jun 10, 2019
48ebd0f
more more immutable
clintropolis Jun 10, 2019
c9b304b
clarify grammar
clintropolis Jun 10, 2019
b05b7a6
Merge remote-tracking branch 'upstream/master' into expr-multi-val-st…
clintropolis Jun 18, 2019
5032099
fix docs
clintropolis Jun 18, 2019
4aae1d8
empty array is string test, we need a way to make arrays better maybe…
clintropolis Jun 19, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -257,6 +257,8 @@ SOURCE/JAVA-CORE
* core/src/main/java/org/apache/druid/java/util/common/parsers/DelimitedParser.java
DirectExecutorService class:
* core/src/main/java/org/apache/druid/java/util/common/concurrent/DirectExecutorService.java
CartesianList class:
* core/src/main/java/org/apache/druid/math/expr/CartesianList.java

This product contains modified versions of the Dockerfile, scripts, and related configuration files
used for building SequenceIQ's Hadoop Docker image, copyright SequenceIQ, Inc. (https://github.com/sequenceiq/hadoop-docker/)
Expand Down
8 changes: 8 additions & 0 deletions core/src/main/antlr4/org/apache/druid/math/expr/antlr/Expr.g4
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,21 @@ expr : 'null' # null
| expr ('<'|'<='|'>'|'>='|'=='|'!=') expr # logicalOpExpr
| expr ('&&'|'||') expr # logicalAndOrExpr
| '(' expr ')' # nestedExpr
| IDENTIFIER '(' lambda ',' fnArgs ')' # applyFunctionExpr
| IDENTIFIER '(' fnArgs? ')' # functionExpr
| IDENTIFIER # identifierExpr
| DOUBLE # doubleExpr
| LONG # longExpr
| STRING # string
| '[' DOUBLE (',' DOUBLE)* ']' # doubleArray
| '[' LONG (',' LONG)* ']' # longArray
| '[' STRING (',' STRING)* ']' # stringArray
| '[]' # emptyArray
;

lambda : (IDENTIFIER | '(' ')' | '(' IDENTIFIER (',' IDENTIFIER)* ')') '->' expr
;

fnArgs : expr (',' expr)* # functionArgs
;

Expand Down
Loading