From a5cd701abf7b8de5acd163547f1e6fc96c36aabc Mon Sep 17 00:00:00 2001 From: Roman Kisel Date: Fri, 26 Jun 2026 12:20:14 +0300 Subject: [PATCH 1/2] Fix QQL precedence for bitwise operations --- .../deltix/qsrv/hf/tickdb/lang/parser/ddl.cup | 26 +- .../deltix/qsrv/hf/tickdb/lang/parser/qql.cup | 88 ++--- .../qsrv/hf/tickdb/qql/Test_QqlObjects.java | 34 ++ .../test/qsrv/hf/tickdb/qql/Test_Queries.java | 2 +- .../src/test/resources/qql/arrays/misc3.txt | 308 ++++++++++++++++++ 5 files changed, 405 insertions(+), 53 deletions(-) create mode 100644 java/timebase/test/src/test/resources/qql/arrays/misc3.txt diff --git a/java/timebase/qql/src/main/java/com/epam/deltix/qsrv/hf/tickdb/lang/parser/ddl.cup b/java/timebase/qql/src/main/java/com/epam/deltix/qsrv/hf/tickdb/lang/parser/ddl.cup index ef1e3e21..ff65930e 100644 --- a/java/timebase/qql/src/main/java/com/epam/deltix/qsrv/hf/tickdb/lang/parser/ddl.cup +++ b/java/timebase/qql/src/main/java/com/epam/deltix/qsrv/hf/tickdb/lang/parser/ddl.cup @@ -42,7 +42,7 @@ action code {: :}; /* Punctuation. */ -terminal SEMICOLON, PLUS, MINUS, STAR; +terminal SEMICOLON, PLUS, MINUS, UMINUS, STAR; terminal LPAREN, RPAREN, LBRACKET, RBRACKET, LBRACE, RBRACE; terminal COLON, SLASH, PERCENT, DOT; terminal BIT_AND, BIT_OR, BIT_XOR, BIT_NOT, RSHIFT, LSHIFT; @@ -166,26 +166,30 @@ non terminal EnumValueAlteration Set_Value_Name; /* Precedences */ precedence left SEMICOLON; +precedence left COMMA; precedence left UNION; -precedence left DISTINCT, SELECT, RECORD, FROM, WHERE, HAVING, GROUP, ARRAY, JOIN, LEFT, TYPE, WITH; +precedence left SELECT, RECORD, FROM, WHERE, HAVING, GROUP, ARRAY, JOIN, LEFT, TYPE, WITH, DISTINCT; precedence left TRIGGER, RESET, OVER, EVERY, OFFSET, LIMIT; -precedence left COMMA; precedence left IF, CASE, WHEN, THEN, ELSE, END, EXISTS; +precedence right ASSIGN; precedence right AS, FIELD; precedence left COLON; -precedence left OR, AND; -precedence left BETWEEN; -precedence right NOT, BIT_NOT; -precedence left IN; -precedence left EQ, NEQ, STRICT_EQ, STRICT_NEQ, ASSIGN, LE, GE, LT, GT; -precedence left LIKE; +precedence left OR; +precedence left AND; +precedence right NOT; +precedence nonassoc BETWEEN; +precedence nonassoc IN; +precedence nonassoc LIKE; +precedence nonassoc IS; +precedence nonassoc EQ, NEQ, STRICT_EQ, STRICT_NEQ, LE, GE, LT, GT; precedence left PLUS, MINUS; +precedence left STAR, SLASH, PERCENT; precedence left BIT_OR; precedence left BIT_XOR; precedence left BIT_AND; +precedence right BIT_NOT; precedence left RSHIFT, LSHIFT; -precedence left STAR, SLASH, PERCENT; -precedence left IS; +precedence right UMINUS; precedence left DOT, QUESTION; precedence left LPAREN, LBRACKET; diff --git a/java/timebase/qql/src/main/java/com/epam/deltix/qsrv/hf/tickdb/lang/parser/qql.cup b/java/timebase/qql/src/main/java/com/epam/deltix/qsrv/hf/tickdb/lang/parser/qql.cup index 85edbfcc..fb744f1b 100644 --- a/java/timebase/qql/src/main/java/com/epam/deltix/qsrv/hf/tickdb/lang/parser/qql.cup +++ b/java/timebase/qql/src/main/java/com/epam/deltix/qsrv/hf/tickdb/lang/parser/qql.cup @@ -42,7 +42,7 @@ action code {: :}; /* Punctuation. */ -terminal SEMICOLON, PLUS, MINUS, STAR; +terminal SEMICOLON, PLUS, MINUS, UMINUS, STAR; terminal LPAREN, RPAREN, LBRACKET, RBRACKET, LBRACE, RBRACE; terminal COLON, SLASH, PERCENT, DOT; terminal BIT_AND, BIT_OR, BIT_XOR, BIT_NOT, RSHIFT, LSHIFT; @@ -150,26 +150,30 @@ non terminal Expression[] Selector; /* Precedences */ precedence left SEMICOLON; +precedence left COMMA; precedence left UNION; -precedence left DISTINCT, SELECT, RECORD, FROM, WHERE, HAVING, GROUP, ARRAY, JOIN, LEFT, TYPE, WITH; +precedence left SELECT, RECORD, FROM, WHERE, HAVING, GROUP, ARRAY, JOIN, LEFT, TYPE, WITH, DISTINCT; precedence left TRIGGER, RESET, OVER, EVERY, OFFSET, LIMIT; -precedence left COMMA; precedence left IF, CASE, WHEN, THEN, ELSE, END, EXISTS; +precedence right ASSIGN; precedence right AS, FIELD; precedence left COLON; -precedence left OR, AND; -precedence left BETWEEN; -precedence right NOT, BIT_NOT; -precedence left IN; -precedence left EQ, NEQ, STRICT_EQ, STRICT_NEQ, ASSIGN, LE, GE, LT, GT; -precedence left LIKE; +precedence left OR; +precedence left AND; +precedence right NOT; +precedence nonassoc BETWEEN; +precedence nonassoc IN; +precedence nonassoc LIKE; +precedence nonassoc IS; +precedence nonassoc EQ, NEQ, STRICT_EQ, STRICT_NEQ, LE, GE, LT, GT; precedence left PLUS, MINUS; +precedence left STAR, SLASH, PERCENT; precedence left BIT_OR; precedence left BIT_XOR; precedence left BIT_AND; +precedence right BIT_NOT; precedence left RSHIFT, LSHIFT; -precedence left STAR, SLASH, PERCENT; -precedence left IS; +precedence right UMINUS; precedence left DOT, QUESTION; precedence left LPAREN, LBRACKET; @@ -200,8 +204,17 @@ Select_Union_Expression ::= Expression ::= Arithmetic_Expression:s {: RESULT = s; :} | + Expression:e1 BETWEEN Arithmetic_Expression:e2 AND Arithmetic_Expression:e3 {: RESULT = new BetweenExpression (lx (e1left, e3right), e1, e2, e3); :} | + Expression:e NOT IN LPAREN Expression_List:args RPAREN:rp + {: RESULT = new InExpression (lx (eleft, rpright), false, e, args); :} | + Expression:e IN LPAREN Expression_List:args RPAREN:rp + {: RESULT = new InExpression (lx (eleft, rpright), true, e, args); :} | + Expression:e1 LIKE Expression:e2 + {: RESULT = new LikeExpression (lx (e1left, e2right), e1, e2, false); :} | + Expression:e1 NOT LIKE Expression:e2 + {: RESULT = new LikeExpression (lx (e1left, e2right), e1, e2, true); :} | // cast and named expressions Expression:e1 AS Cast_Type_Expression:ct @@ -231,14 +244,6 @@ Expression ::= {: RESULT = new RelationExpression (lx (e1left, e2right), OrderRelation.LT, e1, e2); :} | Expression:e1 LE Expression:e2 {: RESULT = new RelationExpression (lx (e1left, e2right), OrderRelation.LE, e1, e2); :} | - Expression:e NOT IN LPAREN Expression_List:args RPAREN:rp - {: RESULT = new InExpression (lx (eleft, rpright), false, e, args); :} | - Expression:e IN LPAREN Expression_List:args RPAREN:rp - {: RESULT = new InExpression (lx (eleft, rpright), true, e, args); :} | - Expression:e1 LIKE Expression:e2 - {: RESULT = new LikeExpression (lx (e1left, e2right), e1, e2, false); :} | - Expression:e1 NOT LIKE Expression:e2 - {: RESULT = new LikeExpression (lx (e1left, e2right), e1, e2, true); :} | Expression:e1 IF Expression:cond [ ELSE Expression:e {: RESULT = e; :} ]:e2 {: RESULT = new IfExpression(lx(e1left, e2right), cond, e1, (Expression) e2); :} | CASE [ Expression:e1 {: RESULT = e1; :} ]:case_expr @@ -271,6 +276,11 @@ Arithmetic_Expression ::= Arithmetic_Expression:e1 LBRACKET Array_Slicing_Expression:e2 RBRACKET {: RESULT = new PredicateExpression(lx(e1left, e2right + 1), e1, e2); :} | + MINUS:m Arithmetic_Expression:e + {: RESULT = new UnaryMinusExpression (lx (mleft, eright), e); :} %prec UMINUS | + BIT_NOT:m Arithmetic_Expression:e + {: RESULT = new BitwiseNotExpression(lx(mleft, eright), e); :} | + Arithmetic_Expression:e1 PLUS Arithmetic_Expression:e2 {: RESULT = new ArithmeticExpression (lx (e1left, e2right), ArithmeticFunction.ADD, e1, e2); :} | Arithmetic_Expression:e1 MINUS Arithmetic_Expression:e2 @@ -284,10 +294,10 @@ Arithmetic_Expression ::= Arithmetic_Expression:e1 BIT_AND Arithmetic_Expression:e2 {: RESULT = new BitwiseExpression(lx (e1left, e2right), BitwiseFunction.AND, e1, e2); :} | - Arithmetic_Expression:e1 BIT_OR Arithmetic_Expression:e2 - {: RESULT = new BitwiseExpression(lx (e1left, e2right), BitwiseFunction.OR, e1, e2); :} | Arithmetic_Expression:e1 BIT_XOR Arithmetic_Expression:e2 {: RESULT = new BitwiseExpression(lx (e1left, e2right), BitwiseFunction.XOR, e1, e2); :} | + Arithmetic_Expression:e1 BIT_OR Arithmetic_Expression:e2 + {: RESULT = new BitwiseExpression(lx (e1left, e2right), BitwiseFunction.OR, e1, e2); :} | Arithmetic_Expression:e1 RSHIFT Arithmetic_Expression:e2 {: RESULT = new BitwiseExpression(lx (e1left, e2right), BitwiseFunction.RSHIFT, e1, e2); :} | Arithmetic_Expression:e1 LSHIFT Arithmetic_Expression:e2 @@ -298,11 +308,6 @@ Arithmetic_Expression ::= Call_Expression:c {: RESULT = c; :} | - MINUS:m Arithmetic_Expression:e - {: RESULT = new UnaryMinusExpression (lx (mleft, eright), e); :} | - BIT_NOT:m Arithmetic_Expression:e - {: RESULT = new BitwiseNotExpression(lx(mleft, eright), e); :} | - Arithmetic_Expression:e IS Type_Id:t {: RESULT = new TypeCheckExpression (lx (eleft, tright), e, t); :} | Arithmetic_Expression:e IS NULL:n @@ -408,7 +413,21 @@ Int_Constant ::= Int_Literal:c {: RESULT = c; :} | MINUS:m Int_Constant:n - {: RESULT = new UnaryMinusExpression(lx(mleft, nright), n); :} | + {: RESULT = new UnaryMinusExpression(lx(mleft, nright), n); :} %prec UMINUS | + BIT_NOT:m Int_Constant:n + {: RESULT = new BitwiseNotExpression(lx(mleft, nright), n); :} | + + Int_Constant:e1 RSHIFT Int_Constant:e2 + {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.RSHIFT, e1, e2); :} | + Int_Constant:e1 LSHIFT Int_Constant:e2 + {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.LSHIFT, e1, e2); :} | + Int_Constant:e1 BIT_AND Int_Constant:e2 + {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.AND, e1, e2); :} | + Int_Constant:e1 BIT_XOR Int_Constant:e2 + {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.XOR, e1, e2); :} | + Int_Constant:e1 BIT_OR Int_Constant:e2 + {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.OR, e1, e2); :} | + Int_Constant:e1 PLUS Int_Constant:e2 {: RESULT = new ArithmeticExpression (lx (e1left, e2right), ArithmeticFunction.ADD, e1, e2); :} | Int_Constant:e1 MINUS Int_Constant:e2 @@ -420,19 +439,6 @@ Int_Constant ::= Int_Constant:e1 PERCENT Int_Constant:e2 {: RESULT = new ArithmeticExpression (lx (e1left, e2right), ArithmeticFunction.MOD, e1, e2); :} | - BIT_NOT:m Int_Constant:n - {: RESULT = new BitwiseNotExpression(lx(mleft, nright), n); :} | - Int_Constant:e1 BIT_AND Int_Constant:e2 - {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.AND, e1, e2); :} | - Int_Constant:e1 BIT_OR Int_Constant:e2 - {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.OR, e1, e2); :} | - Int_Constant:e1 BIT_XOR Int_Constant:e2 - {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.XOR, e1, e2); :} | - Int_Constant:e1 RSHIFT Int_Constant:e2 - {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.RSHIFT, e1, e2); :} | - Int_Constant:e1 LSHIFT Int_Constant:e2 - {: RESULT = new BitwiseExpression(lx(e1left, e2right), BitwiseFunction.LSHIFT, e1, e2); :} | - LPAREN Int_Constant:e RPAREN {: RESULT = e; :}; @@ -446,7 +452,7 @@ Float_Constant ::= Float_Literal:c {: RESULT = c; :} | MINUS:m Float_Constant:n - {: RESULT = new UnaryMinusExpression(lx(mleft, nright), n); :} | + {: RESULT = new UnaryMinusExpression(lx(mleft, nright), n); :} %prec UMINUS | Float_Constant:e1 PLUS Float_Constant:e2 {: RESULT = new ArithmeticExpression (lx (e1left, e2right), ArithmeticFunction.ADD, e1, e2); :} | Float_Constant:e1 MINUS Float_Constant:e2 diff --git a/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_QqlObjects.java b/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_QqlObjects.java index 8a09e615..c4ad2ac4 100644 --- a/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_QqlObjects.java +++ b/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_QqlObjects.java @@ -802,6 +802,25 @@ public MappingInfo() { }; + private static Pair[] QQL_ALL_MISC3 = new Pair[] { + QUERY_RAW("SELECT enumField, byteField, TestEnum:TWO, 33, ~33 FROM alltypesrand "), + QUERY_RAW("SELECT 33, ~33 | 5, (~33) | 5, ~(33 | 5) FROM alltypesrand "), + QUERY_RAW("SELECT byteField, ~byteField | 5, (~byteField) | 5, ~(byteField | 5) FROM alltypesrand"), + QUERY_RAW("SELECT enumField, byteField, TestEnum:THREE, TestEnum:THREE | 5, 5 | TestEnum:THREE, enumField | 5, 5 | enumField, byteField | 5, 5 | byteField FROM alltypesrand"), + QUERY_RAW("SELECT enumField, byteField, TestEnum:THREE, TestEnum:THREE | enumField, TestEnum:THREE | byteField, enumField | byteField FROM alltypesrand"), + + QUERY_RAW("SELECT enumField, byteField, TestEnum:THREE, enumField | enumField, TestEnum:THREE | TestEnum:TWO FROM alltypesrand"), + QUERY_RAW("SELECT enumField, byteField, enumField | TestEnum:FIVE & byteField, enumField | 5 & byteField, 5 & byteField | enumField FROM alltypesrand"), + QUERY_RAW("SELECT enumField, byteField, enumField | TestEnum:FIVE & byteField, enumField | 5 & byteField, 5 & byteField | enumField, 5 & (byteField | enumField) FROM alltypesrand"), + QUERY_RAW("SELECT enumField, byteField, enumField | TestEnum:FIVE & byteField, enumField | 5 & byteField, 5 & byteField | enumField, 5 & (byteField | enumField) FROM alltypesrand"), + QUERY_RAW("SELECT enumField, byteField, enumField ^ TestEnum:FIVE & byteField, enumField ^ 5 & byteField, 5 & byteField ^ enumField, 5 & (byteField ^ enumField) FROM alltypesrand"), + QUERY_RAW("SELECT enumField, byteField, enumField | TestEnum:FIVE ^ byteField, byteField ^ enumField | TestEnum:FIVE, enumField | (TestEnum:FIVE ^ byteField), (enumField | TestEnum:FIVE) ^ byteField FROM alltypesrand"), + QUERY_RAW("SELECT enumField, enumField ^ -1, -1 ^ enumField, (-1) ^ enumField FROM alltypesrand"), + QUERY_RAW("SELECT byteField, byteField ^ -1, -1 ^ byteField, (-1) ^ byteField, -(1 ^ byteField) FROM alltypesrand"), + QUERY_RAW("SELECT byteField, byteField * -1, -1 * byteField, (-1) * byteField, -(1 * byteField) FROM alltypesrand"), + + }; + private static Pair[] QQL_ALL_UNIONS = new Pair[] { QUERY_RAW("select * from (binance union bitfinex union kraken) limit 10 offset 30"), QUERY_RAW("select this.entries from (binance union bitfinex union kraken) limit 10 offset 30"), @@ -1112,6 +1131,21 @@ public void Test_AllMisc() throws Exception { } } + @Test + public void Test_AllMisc3() throws Exception { + if (!remote) { + throw new RuntimeException("Test is available only in remote mode: use -Drunner.remote=true"); + } + + if (GENERATE_EXPECTED) { + qqlWriteExpected(db, QQL_ALL_MISC3, Home.getPath(EXPECTED_GENERATE_PATH + "misc3.txt")); + } else { + Assert.assertTrue( + qql(db, QQL_ALL_MISC3, readExpectedResults(Home.getPath(EXPECTED_PATH + "misc3.txt"))) + ); + } + } + @Test public void Test_AllMisc2() throws Exception { if (!remote) { diff --git a/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java b/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java index d9f8f539..c064dddb 100644 --- a/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java +++ b/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java @@ -61,7 +61,7 @@ public void testDDL() throws Exception { } @Test - @Ignore // TODO: 2/12/2025 @AK need add source for computations/000-prepare.q.txt +// @Ignore // TODO: 2/12/2025 @AK need add source for computations/000-prepare.q.txt public void testComputations() throws Exception { test("${home}/java/timebase/test/src/test/resources/qql/computations/*.q.txt"); } diff --git a/java/timebase/test/src/test/resources/qql/arrays/misc3.txt b/java/timebase/test/src/test/resources/qql/arrays/misc3.txt new file mode 100644 index 00000000..9b2e69f1 --- /dev/null +++ b/java/timebase/test/src/test/resources/qql/arrays/misc3.txt @@ -0,0 +1,308 @@ +Running QQL: SELECT enumField, byteField, TestEnum:TWO, 33, ~33 FROM alltypesrand +{"$type":"QUERY6304190765653227396","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31} +{"$type":"QUERY6304190765653227396","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70} +{"$type":"QUERY6304190765653227396","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100} +{"$type":"QUERY6304190765653227396","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108} +{"$type":"QUERY6304190765653227396","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14} +{"$type":"QUERY6304190765653227396","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25} +{"$type":"QUERY6304190765653227396","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120} +{"$type":"QUERY6304190765653227396","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10} +{"$type":"QUERY6304190765653227396","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41} +{"$type":"QUERY6304190765653227396","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39} +{"$type":"QUERY6304190765653227396","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23} +{"$type":"QUERY6304190765653227396","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57} +{"$type":"QUERY6304190765653227396","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34} +{"$type":"QUERY6304190765653227396","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83} +{"$type":"QUERY6304190765653227396","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19} +{"$type":"QUERY6304190765653227396","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56} +{"$type":"QUERY6304190765653227396","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68} +{"$type":"QUERY6304190765653227396","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9} +{"$type":"QUERY6304190765653227396","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88} +{"$type":"QUERY6304190765653227396","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124} +!END +Running QQL: SELECT 33, ~33 | 5, (~33) | 5, ~(33 | 5) FROM alltypesrand +{"$type":"QUERY-5015394230611840483","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z"} +{"$type":"QUERY-5015394230611840483","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z"} +!END +Running QQL: SELECT byteField, ~byteField | 5, (~byteField) | 5, ~(byteField | 5) FROM alltypesrand +{"$type":"QUERY-4145533343160173225","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","byteField":31,"$1":-27,"$2":-27,"$3":-32} +{"$type":"QUERY-4145533343160173225","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","byteField":70,"$1":-67,"$2":-67,"$3":-72} +{"$type":"QUERY-4145533343160173225","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","byteField":100,"$1":-97,"$2":-97,"$3":-102} +{"$type":"QUERY-4145533343160173225","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","byteField":108,"$1":-105,"$2":-105,"$3":-110} +{"$type":"QUERY-4145533343160173225","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","byteField":14,"$1":-11,"$2":-11,"$3":-16} +{"$type":"QUERY-4145533343160173225","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","byteField":-25,"$1":29,"$2":29,"$3":24} +{"$type":"QUERY-4145533343160173225","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","byteField":120,"$1":-121,"$2":-121,"$3":-126} +{"$type":"QUERY-4145533343160173225","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","byteField":-10,"$1":13,"$2":13,"$3":8} +{"$type":"QUERY-4145533343160173225","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","byteField":41,"$1":-41,"$2":-41,"$3":-46} +{"$type":"QUERY-4145533343160173225","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","byteField":-39,"$1":39,"$2":39,"$3":34} +{"$type":"QUERY-4145533343160173225","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","byteField":-23,"$1":23,"$2":23,"$3":18} +{"$type":"QUERY-4145533343160173225","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","byteField":-57,"$1":61,"$2":61,"$3":56} +{"$type":"QUERY-4145533343160173225","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","byteField":-34,"$1":37,"$2":37,"$3":32} +{"$type":"QUERY-4145533343160173225","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","byteField":-83,"$1":87,"$2":87,"$3":82} +{"$type":"QUERY-4145533343160173225","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","byteField":-19,"$1":23,"$2":23,"$3":18} +{"$type":"QUERY-4145533343160173225","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","byteField":56,"$1":-57,"$2":-57,"$3":-62} +{"$type":"QUERY-4145533343160173225","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","byteField":68,"$1":-65,"$2":-65,"$3":-70} +{"$type":"QUERY-4145533343160173225","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","byteField":9,"$1":-9,"$2":-9,"$3":-14} +{"$type":"QUERY-4145533343160173225","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","byteField":88,"$1":-89,"$2":-89,"$3":-94} +{"$type":"QUERY-4145533343160173225","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","byteField":-124,"$1":127,"$2":127,"$3":122} +!END +Running QQL: SELECT enumField, byteField, TestEnum:THREE, TestEnum:THREE | 5, 5 | TestEnum:THREE, enumField | 5, 5 | enumField, byteField | 5, 5 | byteField FROM alltypesrand +{"$type":"QUERY5652465826192087704","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31,"$1":7,"$2":7,"$3":7,"$4":7,"$5":31,"$6":31} +{"$type":"QUERY5652465826192087704","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70,"$1":7,"$2":7,"$3":5,"$4":5,"$5":71,"$6":71} +{"$type":"QUERY5652465826192087704","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100,"$1":7,"$2":7,"$3":7,"$4":7,"$5":101,"$6":101} +{"$type":"QUERY5652465826192087704","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108,"$1":7,"$2":7,"$3":5,"$4":5,"$5":109,"$6":109} +{"$type":"QUERY5652465826192087704","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14,"$1":7,"$2":7,"$3":7,"$4":7,"$5":15,"$6":15} +{"$type":"QUERY5652465826192087704","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25,"$1":7,"$2":7,"$3":7,"$4":7,"$5":-25,"$6":-25} +{"$type":"QUERY5652465826192087704","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120,"$1":7,"$2":7,"$3":5,"$4":5,"$5":125,"$6":125} +{"$type":"QUERY5652465826192087704","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10,"$1":7,"$2":7,"$3":7,"$4":7,"$5":-9,"$6":-9} +{"$type":"QUERY5652465826192087704","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41,"$1":7,"$2":7,"$3":5,"$4":5,"$5":45,"$6":45} +{"$type":"QUERY5652465826192087704","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39,"$1":7,"$2":7,"$3":5,"$4":5,"$5":-35,"$6":-35} +{"$type":"QUERY5652465826192087704","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23,"$1":7,"$2":7,"$3":5,"$4":5,"$5":-19,"$6":-19} +{"$type":"QUERY5652465826192087704","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57,"$1":7,"$2":7,"$3":5,"$4":5,"$5":-57,"$6":-57} +{"$type":"QUERY5652465826192087704","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34,"$1":7,"$2":7,"$3":7,"$4":7,"$5":-33,"$6":-33} +{"$type":"QUERY5652465826192087704","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83,"$1":7,"$2":7,"$3":5,"$4":5,"$5":-83,"$6":-83} +{"$type":"QUERY5652465826192087704","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19,"$1":7,"$2":7,"$3":5,"$4":5,"$5":-19,"$6":-19} +{"$type":"QUERY5652465826192087704","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56,"$1":7,"$2":7,"$3":5,"$4":5,"$5":61,"$6":61} +{"$type":"QUERY5652465826192087704","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68,"$1":7,"$2":7,"$3":7,"$4":7,"$5":69,"$6":69} +{"$type":"QUERY5652465826192087704","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9,"$1":7,"$2":7,"$3":5,"$4":5,"$5":13,"$6":13} +{"$type":"QUERY5652465826192087704","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88,"$1":7,"$2":7,"$3":7,"$4":7,"$5":93,"$6":93} +{"$type":"QUERY5652465826192087704","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124,"$1":7,"$2":7,"$3":5,"$4":5,"$5":-123,"$6":-123} +!END +Running QQL: SELECT enumField, byteField, TestEnum:THREE, TestEnum:THREE | enumField, TestEnum:THREE | byteField, enumField | byteField FROM alltypesrand +{"$type":"QUERY286959709714716126","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31,"$1":3,"$2":31,"$3":31} +{"$type":"QUERY286959709714716126","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70,"$1":7,"$2":71,"$3":71} +{"$type":"QUERY286959709714716126","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100,"$1":3,"$2":103,"$3":102} +{"$type":"QUERY286959709714716126","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108,"$1":7,"$2":111,"$3":108} +{"$type":"QUERY286959709714716126","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14,"$1":3,"$2":15,"$3":15} +{"$type":"QUERY286959709714716126","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25,"$1":3,"$2":-25,"$3":-25} +{"$type":"QUERY286959709714716126","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120,"$1":3,"$2":123,"$3":121} +{"$type":"QUERY286959709714716126","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10,"$1":3,"$2":-9,"$3":-9} +{"$type":"QUERY286959709714716126","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41,"$1":3,"$2":43,"$3":41} +{"$type":"QUERY286959709714716126","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39,"$1":3,"$2":-37,"$3":-39} +{"$type":"QUERY286959709714716126","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23,"$1":7,"$2":-21,"$3":-19} +{"$type":"QUERY286959709714716126","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57,"$1":3,"$2":-57,"$3":-57} +{"$type":"QUERY286959709714716126","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34,"$1":3,"$2":-33,"$3":-33} +{"$type":"QUERY286959709714716126","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83,"$1":7,"$2":-81,"$3":-83} +{"$type":"QUERY286959709714716126","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19,"$1":3,"$2":-17,"$3":-19} +{"$type":"QUERY286959709714716126","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56,"$1":3,"$2":59,"$3":56} +{"$type":"QUERY286959709714716126","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68,"$1":3,"$2":71,"$3":71} +{"$type":"QUERY286959709714716126","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9,"$1":3,"$2":11,"$3":9} +{"$type":"QUERY286959709714716126","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88,"$1":3,"$2":91,"$3":90} +{"$type":"QUERY286959709714716126","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124,"$1":3,"$2":-121,"$3":-124} +!END +Running QQL: SELECT enumField, byteField, TestEnum:THREE, enumField | enumField, TestEnum:THREE | TestEnum:TWO FROM alltypesrand +{"$type":"QUERY-536392833742981866","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31,"$1":2,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70,"$1":5,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100,"$1":2,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108,"$1":4,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14,"$1":3,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25,"$1":3,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120,"$1":1,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10,"$1":3,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41,"$1":0,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39,"$1":1,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23,"$1":5,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57,"$1":1,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34,"$1":3,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83,"$1":5,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19,"$1":0,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56,"$1":0,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68,"$1":3,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9,"$1":1,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88,"$1":2,"$2":3} +{"$type":"QUERY-536392833742981866","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124,"$1":0,"$2":3} +!END +Running QQL: SELECT enumField, byteField, enumField | TestEnum:FIVE & byteField, enumField | 5 & byteField, 5 & byteField | enumField FROM alltypesrand +{"$type":"QUERY-612059262496034099","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31,"$1":7,"$2":7,"$3":7} +{"$type":"QUERY-612059262496034099","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70,"$1":5,"$2":5,"$3":5} +{"$type":"QUERY-612059262496034099","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100,"$1":6,"$2":6,"$3":6} +{"$type":"QUERY-612059262496034099","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108,"$1":4,"$2":4,"$3":4} +{"$type":"QUERY-612059262496034099","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14,"$1":7,"$2":7,"$3":7} +{"$type":"QUERY-612059262496034099","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25,"$1":7,"$2":7,"$3":7} +{"$type":"QUERY-612059262496034099","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120,"$1":1,"$2":1,"$3":1} +{"$type":"QUERY-612059262496034099","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10,"$1":7,"$2":7,"$3":7} +{"$type":"QUERY-612059262496034099","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41,"$1":1,"$2":1,"$3":1} +{"$type":"QUERY-612059262496034099","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39,"$1":1,"$2":1,"$3":1} +{"$type":"QUERY-612059262496034099","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23,"$1":5,"$2":5,"$3":5} +{"$type":"QUERY-612059262496034099","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57,"$1":5,"$2":5,"$3":5} +{"$type":"QUERY-612059262496034099","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34,"$1":7,"$2":7,"$3":7} +{"$type":"QUERY-612059262496034099","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83,"$1":5,"$2":5,"$3":5} +{"$type":"QUERY-612059262496034099","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19,"$1":5,"$2":5,"$3":5} +{"$type":"QUERY-612059262496034099","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56,"$1":0,"$2":0,"$3":0} +{"$type":"QUERY-612059262496034099","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68,"$1":7,"$2":7,"$3":7} +{"$type":"QUERY-612059262496034099","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9,"$1":1,"$2":1,"$3":1} +{"$type":"QUERY-612059262496034099","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88,"$1":2,"$2":2,"$3":2} +{"$type":"QUERY-612059262496034099","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124,"$1":4,"$2":4,"$3":4} +!END +Running QQL: SELECT enumField, byteField, enumField | TestEnum:FIVE & byteField, enumField | 5 & byteField, 5 & byteField | enumField, 5 & (byteField | enumField) FROM alltypesrand +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100,"$1":6,"$2":6,"$3":6,"$4":4} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108,"$1":4,"$2":4,"$3":4,"$4":4} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56,"$1":0,"$2":0,"$3":0,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88,"$1":2,"$2":2,"$3":2,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124,"$1":4,"$2":4,"$3":4,"$4":4} +!END +Running QQL: SELECT enumField, byteField, enumField | TestEnum:FIVE & byteField, enumField | 5 & byteField, 5 & byteField | enumField, 5 & (byteField | enumField) FROM alltypesrand +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100,"$1":6,"$2":6,"$3":6,"$4":4} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108,"$1":4,"$2":4,"$3":4,"$4":4} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56,"$1":0,"$2":0,"$3":0,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88,"$1":2,"$2":2,"$3":2,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124,"$1":4,"$2":4,"$3":4,"$4":4} +!END +Running QQL: SELECT enumField, byteField, enumField ^ TestEnum:FIVE & byteField, enumField ^ 5 & byteField, 5 & byteField ^ enumField, 5 & (byteField ^ enumField) FROM alltypesrand +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100,"$1":6,"$2":6,"$3":6,"$4":4} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108,"$1":0,"$2":0,"$3":0,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25,"$1":6,"$2":6,"$3":6,"$4":4} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41,"$1":1,"$2":1,"$3":1,"$4":1} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39,"$1":0,"$2":0,"$3":0,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23,"$1":4,"$2":4,"$3":4,"$4":4} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57,"$1":4,"$2":4,"$3":4,"$4":4} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83,"$1":0,"$2":0,"$3":0,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19,"$1":5,"$2":5,"$3":5,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56,"$1":0,"$2":0,"$3":0,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68,"$1":7,"$2":7,"$3":7,"$4":5} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9,"$1":0,"$2":0,"$3":0,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88,"$1":2,"$2":2,"$3":2,"$4":0} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124,"$1":4,"$2":4,"$3":4,"$4":4} +!END +Running QQL: SELECT enumField, byteField, enumField | TestEnum:FIVE ^ byteField, byteField ^ enumField | TestEnum:FIVE, enumField | (TestEnum:FIVE ^ byteField), (enumField | TestEnum:FIVE) ^ byteField FROM alltypesrand +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","byteField":31,"$1":26,"$2":29,"$3":26,"$4":24} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","byteField":70,"$1":71,"$2":71,"$3":71,"$4":67} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","byteField":100,"$1":99,"$2":103,"$3":99,"$4":99} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","byteField":108,"$1":109,"$2":109,"$3":109,"$4":105} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","byteField":14,"$1":11,"$2":13,"$3":11,"$4":9} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","byteField":-25,"$1":-29,"$2":-27,"$3":-29,"$4":-32} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","byteField":120,"$1":125,"$2":125,"$3":125,"$4":125} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","byteField":-10,"$1":-13,"$2":-11,"$3":-13,"$4":-15} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","byteField":41,"$1":44,"$2":45,"$3":44,"$4":44} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","byteField":-39,"$1":-35,"$2":-35,"$3":-35,"$4":-36} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","byteField":-23,"$1":-19,"$2":-19,"$3":-19,"$4":-20} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","byteField":-57,"$1":-61,"$2":-57,"$3":-61,"$4":-62} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","byteField":-34,"$1":-37,"$2":-35,"$3":-37,"$4":-39} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","byteField":-83,"$1":-83,"$2":-83,"$3":-83,"$4":-88} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","byteField":-19,"$1":-24,"$2":-19,"$3":-24,"$4":-24} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","byteField":56,"$1":61,"$2":61,"$3":61,"$4":61} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","byteField":68,"$1":67,"$2":71,"$3":67,"$4":67} +{"$type":"QUERY-8830634230599805368","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","byteField":9,"$1":13,"$2":13,"$3":13,"$4":12} +{"$type":"QUERY-8830634230599805368","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","byteField":88,"$1":95,"$2":95,"$3":95,"$4":95} +{"$type":"QUERY-8830634230599805368","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","byteField":-124,"$1":-127,"$2":-123,"$3":-127,"$4":-127} +!END +Running QQL: SELECT enumField, enumField ^ -1, -1 ^ enumField, (-1) ^ enumField FROM alltypesrand +{"$type":"QUERY-4473209925571363762","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","enumField":"TWO","$1":-3,"$2":-3,"$3":-3} +{"$type":"QUERY-4473209925571363762","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","enumField":"FIVE","$1":-6,"$2":-6,"$3":-6} +{"$type":"QUERY-4473209925571363762","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","enumField":"TWO","$1":-3,"$2":-3,"$3":-3} +{"$type":"QUERY-4473209925571363762","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","enumField":"FOUR","$1":-5,"$2":-5,"$3":-5} +{"$type":"QUERY-4473209925571363762","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","enumField":"THREE","$1":-4,"$2":-4,"$3":-4} +{"$type":"QUERY-4473209925571363762","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","enumField":"THREE","$1":-4,"$2":-4,"$3":-4} +{"$type":"QUERY-4473209925571363762","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","enumField":"ONE","$1":-2,"$2":-2,"$3":-2} +{"$type":"QUERY-4473209925571363762","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","enumField":"THREE","$1":-4,"$2":-4,"$3":-4} +{"$type":"QUERY-4473209925571363762","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","enumField":"ZERO","$1":-1,"$2":-1,"$3":-1} +{"$type":"QUERY-4473209925571363762","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","enumField":"ONE","$1":-2,"$2":-2,"$3":-2} +{"$type":"QUERY-4473209925571363762","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","enumField":"FIVE","$1":-6,"$2":-6,"$3":-6} +{"$type":"QUERY-4473209925571363762","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","enumField":"ONE","$1":-2,"$2":-2,"$3":-2} +{"$type":"QUERY-4473209925571363762","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","enumField":"THREE","$1":-4,"$2":-4,"$3":-4} +{"$type":"QUERY-4473209925571363762","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","enumField":"FIVE","$1":-6,"$2":-6,"$3":-6} +{"$type":"QUERY-4473209925571363762","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","enumField":"ZERO","$1":-1,"$2":-1,"$3":-1} +{"$type":"QUERY-4473209925571363762","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","enumField":"ZERO","$1":-1,"$2":-1,"$3":-1} +{"$type":"QUERY-4473209925571363762","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","enumField":"THREE","$1":-4,"$2":-4,"$3":-4} +{"$type":"QUERY-4473209925571363762","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","enumField":"ONE","$1":-2,"$2":-2,"$3":-2} +{"$type":"QUERY-4473209925571363762","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","enumField":"TWO","$1":-3,"$2":-3,"$3":-3} +{"$type":"QUERY-4473209925571363762","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","enumField":"ZERO","$1":-1,"$2":-1,"$3":-1} +!END +Running QQL: SELECT byteField, byteField ^ -1, -1 ^ byteField, (-1) ^ byteField, -(1 ^ byteField) FROM alltypesrand +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","byteField":31,"$1":-32,"$2":-32,"$3":-32,"$4":-30} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","byteField":70,"$1":-71,"$2":-71,"$3":-71,"$4":-71} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","byteField":100,"$1":-101,"$2":-101,"$3":-101,"$4":-101} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","byteField":108,"$1":-109,"$2":-109,"$3":-109,"$4":-109} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","byteField":14,"$1":-15,"$2":-15,"$3":-15,"$4":-15} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","byteField":-25,"$1":24,"$2":24,"$3":24,"$4":26} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","byteField":120,"$1":-121,"$2":-121,"$3":-121,"$4":-121} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","byteField":-10,"$1":9,"$2":9,"$3":9,"$4":9} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","byteField":41,"$1":-42,"$2":-42,"$3":-42,"$4":-40} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","byteField":-39,"$1":38,"$2":38,"$3":38,"$4":40} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","byteField":-23,"$1":22,"$2":22,"$3":22,"$4":24} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","byteField":-57,"$1":56,"$2":56,"$3":56,"$4":58} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","byteField":-34,"$1":33,"$2":33,"$3":33,"$4":33} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","byteField":-83,"$1":82,"$2":82,"$3":82,"$4":84} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","byteField":-19,"$1":18,"$2":18,"$3":18,"$4":20} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","byteField":56,"$1":-57,"$2":-57,"$3":-57,"$4":-57} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","byteField":68,"$1":-69,"$2":-69,"$3":-69,"$4":-69} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","byteField":9,"$1":-10,"$2":-10,"$3":-10,"$4":-8} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","byteField":88,"$1":-89,"$2":-89,"$3":-89,"$4":-89} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","byteField":-124,"$1":123,"$2":123,"$3":123,"$4":123} +!END +Running QQL: SELECT byteField, byteField * -1, -1 * byteField, (-1) * byteField, -(1 * byteField) FROM alltypesrand +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:00:00.000Z","byteField":31,"$1":-31,"$2":-31,"$3":-31,"$4":-31} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:01:00.000Z","byteField":70,"$1":-70,"$2":-70,"$3":-70,"$4":-70} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:02:00.000Z","byteField":100,"$1":-100,"$2":-100,"$3":-100,"$4":-100} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:03:00.000Z","byteField":108,"$1":-108,"$2":-108,"$3":-108,"$4":-108} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:04:00.000Z","byteField":14,"$1":-14,"$2":-14,"$3":-14,"$4":-14} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:05:00.000Z","byteField":-25,"$1":25,"$2":25,"$3":25,"$4":25} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:06:00.000Z","byteField":120,"$1":-120,"$2":-120,"$3":-120,"$4":-120} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:07:00.000Z","byteField":-10,"$1":10,"$2":10,"$3":10,"$4":10} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:08:00.000Z","byteField":41,"$1":-41,"$2":-41,"$3":-41,"$4":-41} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:09:00.000Z","byteField":-39,"$1":39,"$2":39,"$3":39,"$4":39} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:10:00.000Z","byteField":-23,"$1":23,"$2":23,"$3":23,"$4":23} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:11:00.000Z","byteField":-57,"$1":57,"$2":57,"$3":57,"$4":57} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:12:00.000Z","byteField":-34,"$1":34,"$2":34,"$3":34,"$4":34} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:13:00.000Z","byteField":-83,"$1":83,"$2":83,"$3":83,"$4":83} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:14:00.000Z","byteField":-19,"$1":19,"$2":19,"$3":19,"$4":19} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:15:00.000Z","byteField":56,"$1":-56,"$2":-56,"$3":-56,"$4":-56} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:16:00.000Z","byteField":68,"$1":-68,"$2":-68,"$3":-68,"$4":-68} +{"$type":"QUERY4686422865827189246","symbol":"S3","timestamp":"2021-01-01T00:17:00.000Z","byteField":9,"$1":-9,"$2":-9,"$3":-9,"$4":-9} +{"$type":"QUERY4686422865827189246","symbol":"S1","timestamp":"2021-01-01T00:18:00.000Z","byteField":88,"$1":-88,"$2":-88,"$3":-88,"$4":-88} +{"$type":"QUERY4686422865827189246","symbol":"S2","timestamp":"2021-01-01T00:19:00.000Z","byteField":-124,"$1":124,"$2":124,"$3":124,"$4":124} +!END From bcb7ac921b7888c7312d88dfbb537a0bd25f3e35 Mon Sep 17 00:00:00 2001 From: Roman Kisel Date: Fri, 26 Jun 2026 13:27:55 +0300 Subject: [PATCH 2/2] Ignore qql computations test --- .../com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java b/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java index c064dddb..d9f8f539 100644 --- a/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java +++ b/java/timebase/test/src/test/java/com/epam/deltix/test/qsrv/hf/tickdb/qql/Test_Queries.java @@ -61,7 +61,7 @@ public void testDDL() throws Exception { } @Test -// @Ignore // TODO: 2/12/2025 @AK need add source for computations/000-prepare.q.txt + @Ignore // TODO: 2/12/2025 @AK need add source for computations/000-prepare.q.txt public void testComputations() throws Exception { test("${home}/java/timebase/test/src/test/resources/qql/computations/*.q.txt"); }