This is an automated email from the ASF dual-hosted git repository. snlee pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/pinot.git
The following commit(s) were added to refs/heads/master by this push: new 9cf7d81dd0 Add consuming metadata to broker response (#9092) 9cf7d81dd0 is described below commit 9cf7d81dd01ce4ea651cd6c2d5c0d91b7d1ea403 Author: Ravishankar <ravishankar.gnanapraka...@gmail.com> AuthorDate: Wed Jul 27 08:42:26 2022 +0530 Add consuming metadata to broker response (#9092) * Add consuming metadata to broker response Rename the createSegment method name in test * Fix compatibility failures --- .../query-results/feature-test-1-rest-sql.results | 124 ++++++++++----------- .../feature-test-2-sql-realtime.results | 62 +++++------ .../feature-test-3-sql-realtime.results | 46 ++++---- .../requesthandler/BaseBrokerRequestHandler.java | 4 +- .../pinot/common/response/BrokerResponse.java | 10 ++ .../response/broker/BrokerResponseNative.java | 31 +++++- .../org/apache/pinot/common/utils/DataTable.java | 2 + .../operator/blocks/IntermediateResultsBlock.java | 24 ++++ .../operator/combine/CombineOperatorUtils.java | 14 +++ .../query/executor/ServerQueryExecutorV1Impl.java | 2 + .../pinot/core/query/reduce/BaseReduceService.java | 14 +++ .../pinot/core/query/scheduler/QueryScheduler.java | 8 +- .../combine/SelectionCombineOperatorTest.java | 58 +++++++++- 13 files changed, 274 insertions(+), 125 deletions(-) diff --git a/compatibility-verifier/sample-test-suite/config/query-results/feature-test-1-rest-sql.results b/compatibility-verifier/sample-test-suite/config/query-results/feature-test-1-rest-sql.results index 83ae247116..3aa21ed1c7 100644 --- a/compatibility-verifier/sample-test-suite/config/query-results/feature-test-1-rest-sql.results +++ b/compatibility-verifier/sample-test-suite/config/query-results/feature-test-1-rest-sql.results @@ -18,86 +18,86 @@ # # Aggregation -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG"],"columnNames":["count(*)"]},"rows":[[10]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":4,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} -{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"]},"rows":[[4.294967536E9,-2.147479976E9,0.0,6.0,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":40,"numGroupsLi [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"]},"rows":[[10,19,114.09000263214111,1516.9,250.00000000000003,6656.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFil [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"],"columnNames":["percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"]},"rows":[[7611.0,462.0,7611,462,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegme [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["INT","INT","LONG","LONG"],"columnNames":["distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"]},"rows":[[6,8,6,8]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":20,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":6,"segmentStati [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG"],"columnNames":["count(*)"]},"rows":[[10]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":4,"segmentStatistics":[],"traceInfo":{},"minConsumi [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"]},"rows":[[4.294967536E9,-2.147479976E9,0.0,6.0,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0 [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"]},"rows":[[10,19,114.09000263214111,1516.9,250.00000000000003,6656.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsuming [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"],"columnNames":["percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"]},"rows":[[7611.0,462.0,7611,462,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegme [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["INT","INT","LONG","LONG"],"columnNames":["distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"]},"rows":[[6,8,6,8]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntr [...] # Selection -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","STRING","STRING","BYTES"],"columnNames":["longDimSV2","stringDimSV1","textDim1","bytesDimSV1"]},"rows":[[2,"s1-0","Java C++ Python","4877625602"],[2,"s1-0","Java C++ Python","01a0bc"],[21,"s1-2","Java C++ golang","13225573e3f5"],[21,"s1-2","Java C++ golang","deadbeef"],[22,"s1-4","Java C++ golang","deed0507"],[32,"s1-5","golang shell bash",""],[6777,"s1-7","golang Java","d54d0507"],[7621,"s1-6","C++ golang python","deed0507"],[7621 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","STRING","STRING","BYTES"],"columnNames":["longDimSV2","stringDimSV1","textDim1","bytesDimSV1"]},"rows":[[7621,"s1-6","C++ golang python","deed0507"],[7621,"s1-6","C++ golang python","deed0507"],[7621,"s1-6","C++ golang python","deed0507"],[6777,"s1-7","golang Java","d54d0507"],[32,"s1-5","golang shell bash",""],[22,"s1-4","Java C++ golang","deed0507"],[21,"s1-2","Java C++ golang","13225573e3f5"],[21,"s1-2","Java C++ golang","deadbe [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","STRING","STRING","BYTES"],"columnNames":["longDimSV2","stringDimSV1","textDim1","bytesDimSV1"]},"rows":[[7621,"s1-6","C++ golang python","deed0507"],[7621,"s1-6","C++ golang python","deed0507"],[7621,"s1-6","C++ golang python","deed0507"],[6777,"s1-7","golang Java","d54d0507"],[32,"s1-5","golang shell bash",""],[22,"s1-4","Java C++ golang","deed0507"],[21,"s1-2","Java C++ golang","13225573e3f5"],[21,"s1-2","Java C++ golang","deadbe [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","STRING","STRING","BYTES"],"columnNames":["longDimSV2","stringDimSV1","textDim1","bytesDimSV1"]},"rows":[[2,"s1-0","Java C++ Python","4877625602"],[2,"s1-0","Java C++ Python","01a0bc"],[21,"s1-2","Java C++ golang","13225573e3f5"],[21,"s1-2","Java C++ golang","deadbeef"],[22,"s1-4","Java C++ golang","deed0507"],[32,"s1-5","golang shell bash",""],[6777,"s1-7","golang Java","d54d0507"],[7621,"s1-6","C++ golang python","deed0507"],[7621 [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","STRING","STRING","BYTES"],"columnNames":["longDimSV2","stringDimSV1","textDim1","bytesDimSV1"]},"rows":[[7621,"s1-6","C++ golang python","deed0507"],[7621,"s1-6","C++ golang python","deed0507"],[7621,"s1-6","C++ golang python","deed0507"],[6777,"s1-7","golang Java","d54d0507"],[32,"s1-5","golang shell bash",""],[22,"s1-4","Java C++ golang","deed0507"],[21,"s1-2","Java C++ golang","13225573e3f5"],[21,"s1-2","Java C++ golang","deadbe [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","STRING","STRING","BYTES"],"columnNames":["longDimSV2","stringDimSV1","textDim1","bytesDimSV1"]},"rows":[[7621,"s1-6","C++ golang python","deed0507"],[7621,"s1-6","C++ golang python","deed0507"],[7621,"s1-6","C++ golang python","deed0507"],[6777,"s1-7","golang Java","d54d0507"],[32,"s1-5","golang shell bash",""],[22,"s1-4","Java C++ golang","deed0507"],[21,"s1-2","Java C++ golang","13225573e3f5"],[21,"s1-2","Java C++ golang","deadbe [...] # Selection & Filtering -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","DOUBLE"],"columnNames":["textDim1","longDimSV2","doubleMetric1"]},"rows":[["Java C++ golang",22,24.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":4,"numEntriesScannedPostFilter":12,"numGroupsLimitReached":false,"totalDo [...] -{"isSuperset":true,"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","DOUBLE"],"columnNames":["textDim1","longDimSV2","doubleMetric1"]},"rows":[["Java C++ golang",22,24.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":4,"numEntriesScannedPostFilter":12,"numGroupsLimitReach [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","DOUBLE"],"columnNames":["textDim1","longDimSV2","doubleMetric1"]},"rows":[["Java C++ golang",22,24.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":4,"numEntriesScannedPostFilter":12,"numGroupsLimitReached":false,"totalDo [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY","INT_ARRAY","STRING_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1","intDimMV2","stringDimMV2"]},"rows":[["s1-5",-9223372036854775808,[-2147483648],[92,22],["m2-2-0"]],["s1-2",11,[32,42],[62,72],["m2-2-0","m2-2-1"]],["s1-2",11,[32,42],[62,72],["m2-3-0","m2-3-1"]],["s1-4",41,[42,52],[72,82],["m2-2-0","m2-2-1"]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1," [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY","INT_ARRAY","STRING_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1","intDimMV2","stringDimMV2"]},"rows":[["s1-4",41,[42,52],[72,82],["m2-2-0","m2-2-1"]],["s1-2",11,[32,42],[62,72],["m2-2-0","m2-2-1"]],["s1-2",11,[32,42],[62,72],["m2-3-0","m2-3-1"]],["s1-5",-9223372036854775808,[-2147483648],[92,22],["m2-2-0"]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1," [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY","INT_ARRAY","STRING_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1","intDimMV2","stringDimMV2"]},"rows":[["s1-4",41,[42,52],[72,82],["m2-2-0","m2-2-1"]],["s1-2",11,[32,42],[62,72],["m2-3-0","m2-3-1"]],["s1-2",11,[32,42],[62,72],["m2-2-0","m2-2-1"]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned" [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","DOUBLE"],"columnNames":["textDim1","longDimSV2","doubleMetric1"]},"rows":[["Java C++ golang",22,24.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMat [...] +{"isSuperset":true,"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","DOUBLE"],"columnNames":["textDim1","longDimSV2","doubleMetric1"]},"rows":[["Java C++ golang",22,24.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numCo [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","DOUBLE"],"columnNames":["textDim1","longDimSV2","doubleMetric1"]},"rows":[["Java C++ golang",22,24.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1],["C++ golang python",7621,263.1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMat [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY","INT_ARRAY","STRING_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1","intDimMV2","stringDimMV2"]},"rows":[["s1-5",-9223372036854775808,[-2147483648],[92,22],["m2-2-0"]],["s1-2",11,[32,42],[62,72],["m2-2-0","m2-2-1"]],["s1-2",11,[32,42],[62,72],["m2-3-0","m2-3-1"]],["s1-4",41,[42,52],[72,82],["m2-2-0","m2-2-1"]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1," [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY","INT_ARRAY","STRING_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1","intDimMV2","stringDimMV2"]},"rows":[["s1-4",41,[42,52],[72,82],["m2-2-0","m2-2-1"]],["s1-2",11,[32,42],[62,72],["m2-2-0","m2-2-1"]],["s1-2",11,[32,42],[62,72],["m2-3-0","m2-3-1"]],["s1-5",-9223372036854775808,[-2147483648],[92,22],["m2-2-0"]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1," [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY","INT_ARRAY","STRING_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1","intDimMV2","stringDimMV2"]},"rows":[["s1-4",41,[42,52],[72,82],["m2-2-0","m2-2-1"]],["s1-2",11,[32,42],[62,72],["m2-3-0","m2-3-1"]],["s1-2",11,[32,42],[62,72],["m2-2-0","m2-2-1"]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSeg [...] # Selection & Grouping on Aggregation -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","LONG"],"columnNames":["longDimSV1","intDimMV1","count(*)"]},"rows":[[-9223372036854775808,-2147483648,1],[1,3,2],[1,4,2],[11,42,2],[11,32,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":20,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":14,"segmentStatistics":[],"traceInfo":{}," [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"]},"rows":[[-9223372036854775808,-2147483648,0.0,-2.147483648E9,0.0,22.0,-9.223372036854776E18,-2.147483648E9],[1,3,20.0,14.0,10.0,6.0,1.0,4.0],[1,4,20.0,14.0,10.0,6.0,1.0,4.0],[11,42,20.0,148.0,10.0,62.0,11.0,42.0],[11,32,20 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"]},"rows":[[-9223372036854775808,-2147483648,1,1,0.0,57.0,0.0,70.0],[1,3,2,4,12.100000381469727,6.5,0.0,1.0],[1,4,2,4,12.100000381469727,6.5,0.0,1.0],[11,42,2,4,22.100000381469727,67.0,0.0,10.0],[11,32,2,4,22.1000 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"]},"rows":[[-9223372036854775808,-2147483648,-9.223372036854776E18,-2.147483648E9,-9223372036854775808,-2147483648,-9.2233720368547 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","INT","INT","LONG","LONG"],"columnNames":["longDimSV1","intDimMV1","distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"]},"rows":[[-9223372036854775808,-2147483648,1,1,1,1],[1,3,1,2,1,2],[1,4,1,2,1,2],[11,42,1,2,1,2],[11,32,1,2,1,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatche [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","LONG"],"columnNames":["longDimSV1","intDimMV1","count(*)"]},"rows":[[-9223372036854775808,-2147483648,1],[1,3,2],[1,4,2],[11,42,2],[11,32,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFilter":20,"n [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"]},"rows":[[-9223372036854775808,-2147483648,0.0,-2.147483648E9,0.0,22.0,-9.223372036854776E18,-2.147483648E9],[1,3,20.0,14.0,10.0,6.0,1.0,4.0],[1,4,20.0,14.0,10.0,6.0,1.0,4.0],[11,42,20.0,148.0,10.0,62.0,11.0,42.0],[11,32,20 [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"]},"rows":[[-9223372036854775808,-2147483648,1,1,0.0,57.0,0.0,70.0],[1,3,2,4,12.100000381469727,6.5,0.0,1.0],[1,4,2,4,12.100000381469727,6.5,0.0,1.0],[11,42,2,4,22.100000381469727,67.0,0.0,10.0],[11,32,2,4,22.1000 [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"]},"rows":[[-9223372036854775808,-2147483648,-9.223372036854776E18,-2.147483648E9,-9223372036854775808,-2147483648,-9.2233720368547 [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","INT","INT","LONG","LONG"],"columnNames":["longDimSV1","intDimMV1","distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"]},"rows":[[-9223372036854775808,-2147483648,1,1,1,1],[1,3,1,2,1,2],[1,4,1,2,1,2],[11,42,1,2,1,2],[11,32,1,2,1,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatche [...] # Selection & Filtering & Grouping on Aggregation {"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","LONG"],"columnNames":["longDimSV1","intDimMV1","count(*)"]},"rows":[[-9223372036854775808,-2147483648,1],[11,32,2],[11,42,2],[41,42,1],[41,52,1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":4,"numEntriesScannedPostFilter":8,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":8,"segmentStatistics":[],"traceInfo":{}, [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"]},"rows":[[-9223372036854775808,-2147483648,0,-2147483648,0,22,-9223372036854776000,-2147483648],[11,32,20,148,10,62,11,42],[11,42,20,148,10,62,11,42],[41,42,14,94,14,72,41,52],[41,52,14,94,14,72,41,52]]},"exceptions":[],"nu [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"]},"rows":[[-9223372036854775808,-2147483648,1,1,0,57,0,70],[11,32,2,4,22.100000381469727,67,0,10],[11,42,2,4,22.100000381469727,67,0,10],[41,42,1,2,24.100000381469727,77,0,10],[41,52,1,2,24.100000381469727,77,0,1 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"]},"rows":[[-9223372036854775808,-2147483648,-9223372036854775808,-2147483648,-9223372036854775808,-2147483648,-9223372036854776000 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","INT","INT","LONG","LONG"],"columnNames":["longDimSV1","intDimMV1","distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"]},"rows":[[-9223372036854775808,-2147483648,1,1,1,1],[11,32,1,2,1,2],[11,42,1,2,1,2],[41,42,1,2,1,2],[41,52,1,2,1,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMa [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"]},"rows":[[-9223372036854775808,-2147483648,0,-2147483648,0,22,-9223372036854776000,-2147483648],[11,32,20,148,10,62,11,42],[11,42,20,148,10,62,11,42],[41,42,14,94,14,72,41,52],[41,52,14,94,14,72,41,52]]},"exceptions":[],"nu [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"]},"rows":[[-9223372036854775808,-2147483648,1,1,0,57,0,70],[11,32,2,4,22.100000381469727,67,0,10],[11,42,2,4,22.100000381469727,67,0,10],[41,42,1,2,24.100000381469727,77,0,10],[41,52,1,2,24.100000381469727,77,0,1 [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"],"columnNames":["longDimSV1","intDimMV1","percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"]},"rows":[[-9223372036854775808,-2147483648,-9223372036854775808,-2147483648,-9223372036854775808,-2147483648,-9223372036854776000 [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","INT","INT","INT","LONG","LONG"],"columnNames":["longDimSV1","intDimMV1","distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"]},"rows":[[-9223372036854775808,-2147483648,1,1,1,1],[11,32,1,2,1,2],[11,42,1,2,1,2],[41,42,1,2,1,2],[41,52,1,2,1,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMa [...] # Transformation Functions -{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE"],"columnNames":["add(longDimSV1,sub(longDimSV2,'3'))","mod(intMetric1,'10')","div(doubleMetric1,mult(floatMetric1,'5'))"]},"rows":[[15229.0,1.0,0.20076306285631254],[15229.0,7.0,0.20076306285631254],[15229.0,7.0,0.20076306285631254],[13540.0,7.0,0.20076306285631254],[60.0,4.0,0.1999999968342762],[29.0,0.0,0.20904977014723267],[29.0,0.0,0.20904977014723267],[0.0,0.0,0.21652891879345226],[0.0,0.0,0.2165289187934522 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE"],"columnNames":["floor(sqrt(doubleMetric1))","ceil(ln(longDimSV1))","exp(mod(abs(longDimSV2),'3'))"]},"rows":[[3.0,0.0,7.38905609893065],[3.0,0.0,7.38905609893065],[4.0,3.0,1.0],[4.0,3.0,1.0],[4.0,4.0,2.718281828459045],[4.0,"NaN",7.38905609893065],[16.0,9.0,2.718281828459045],[16.0,9.0,2.718281828459045],[16.0,9.0,2.718281828459045],[16.0,9.0,1.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1," [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG"],"columnNames":["count(*)"]},"rows":[[6],[1],[3]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":20,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":9,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} -{"resultTable":{"dataSchema":{"columnDataTypes":["INT","LONG"],"columnNames":["valuein(intDimMV1,'3','32')","count(*)"]},"rows":[[3,2],[32,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":18,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING","STRING","STRING","STRING"],"columnNames":["upper(stringDimSV1)","lower(textDim1)","reverse(stringDimSV2)","ltrim(substr(textDim1,'4','9'))","rtrim(substr(textDim1,'4','9'))"]},"rows":[["S1-0","java c++ python","0-2s","C++ "," C++"],["S1-0","java c++ python","0-2s","C++ "," C++"],["S1-2","java c++ golang","2-2s","C++ "," C++"],["S1-2","java c++ golang","2-2s","C++ "," C++"],["S1-4","java c++ golang","4-2s","C++ "," C++"], [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING","INT","STRING","STRING"],"columnNames":["stringDimSV2","replace(stringDimSV2,'foo','bar')","codepoint(stringDimSV2)","rpad(stringDimSV2,'11','abc')","lpad(stringDimSV2,'11','xyz')"]},"rows":[["s2-2","s2-2",115,"s2-2abcabca","xyzxyzxs2-2"],["s2-2","s2-2",115,"s2-2abcabca","xyzxyzxs2-2"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"nu [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE"],"columnNames":["add(longDimSV1,sub(longDimSV2,'3'))","mod(intMetric1,'10')","div(doubleMetric1,mult(floatMetric1,'5'))"]},"rows":[[15229.0,1.0,0.20076306285631254],[15229.0,7.0,0.20076306285631254],[15229.0,7.0,0.20076306285631254],[13540.0,7.0,0.20076306285631254],[60.0,4.0,0.1999999968342762],[29.0,0.0,0.20904977014723267],[29.0,0.0,0.20904977014723267],[0.0,0.0,0.21652891879345226],[0.0,0.0,0.2165289187934522 [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE"],"columnNames":["floor(sqrt(doubleMetric1))","ceil(ln(longDimSV1))","exp(mod(abs(longDimSV2),'3'))"]},"rows":[[3.0,0.0,7.38905609893065],[3.0,0.0,7.38905609893065],[4.0,3.0,1.0],[4.0,3.0,1.0],[4.0,4.0,2.718281828459045],[4.0,"NaN",7.38905609893065],[16.0,9.0,2.718281828459045],[16.0,9.0,2.718281828459045],[16.0,9.0,2.718281828459045],[16.0,9.0,1.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1," [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG"],"columnNames":["count(*)"]},"rows":[[6],[1],[3]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFilter":20,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":9,"segmentStatistics":[],"traceInfo":{},"mi [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["INT","LONG"],"columnNames":["valuein(intDimMV1,'3','32')","count(*)"]},"rows":[[3,2],[32,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":18,"se [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING","STRING","STRING","STRING"],"columnNames":["upper(stringDimSV1)","lower(textDim1)","reverse(stringDimSV2)","ltrim(substr(textDim1,'4','9'))","rtrim(substr(textDim1,'4','9'))"]},"rows":[["S1-0","java c++ python","0-2s","C++ "," C++"],["S1-0","java c++ python","0-2s","C++ "," C++"],["S1-2","java c++ golang","2-2s","C++ "," C++"],["S1-2","java c++ golang","2-2s","C++ "," C++"],["S1-4","java c++ golang","4-2s","C++ "," C++"], [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING","INT","STRING","STRING"],"columnNames":["stringDimSV2","replace(stringDimSV2,'foo','bar')","codepoint(stringDimSV2)","rpad(stringDimSV2,'11','abc')","lpad(stringDimSV2,'11','xyz')"]},"rows":[["s2-2","s2-2",115,"s2-2abcabca","xyzxyzxs2-2"],["s2-2","s2-2",115,"s2-2abcabca","xyzxyzxs2-2"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"nu [...] # Groovy Scripts -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","LONG","LONG"],"columnNames":["longDimSV1","longDimSV2","groovy('{\"returnType\":\"LONG\",\"isSingleValue\":true}','arg0 + arg1',longDimSV1,longDimSV2)"]},"rows":[[-9223372036854775808,32,-9223372036854775776],[1,2,3],[1,2,3],[11,21,32],[11,21,32],[41,22,63],[6766,6777,13543],[7611,7621,15232],[7611,7621,15232],[7611,7621,15232]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProces [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","STRING"],"columnNames":["count(*)","groovy('{\"returnType\":\"STRING\", \"isSingleValue\":true}','def result; if (arg0 < 0) { result = \"NEGATIVE\"; } else if (arg0 < 10) { result = \"SMALL\";} else if (arg0 < 50) { result = \"MEDIUM\";} else{result = \"LARGE\"}; return result',longDimSV1)"]},"rows":[[4,"LARGE"],[3,"MEDIUM"],[2,"SMALL"],[1,"NEGATIVE"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueri [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["INT"],"columnNames":["groovy('{\"returnType\":\"INT\",\"isSingleValue\":true}','arg0.toList().max()',intDimMV1)"]},"rows":[[-2147483648],[4],[4],[42],[42],[52],[462],[462],[462],[462]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":26,"segmentS [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","LONG","LONG"],"columnNames":["longDimSV1","longDimSV2","groovy('{\"returnType\":\"LONG\",\"isSingleValue\":true}','arg0 + arg1',longDimSV1,longDimSV2)"]},"rows":[[-9223372036854775808,32,-9223372036854775776],[1,2,3],[1,2,3],[11,21,32],[11,21,32],[41,22,63],[6766,6777,13543],[7611,7621,15232],[7611,7621,15232],[7611,7621,15232]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProces [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG","STRING"],"columnNames":["count(*)","groovy('{\"returnType\":\"STRING\", \"isSingleValue\":true}','def result; if (arg0 < 0) { result = \"NEGATIVE\"; } else if (arg0 < 10) { result = \"SMALL\";} else if (arg0 < 50) { result = \"MEDIUM\";} else{result = \"LARGE\"}; return result',longDimSV1)"]},"rows":[[4,"LARGE"],[3,"MEDIUM"],[2,"SMALL"],[1,"NEGATIVE"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueri [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["INT"],"columnNames":["groovy('{\"returnType\":\"INT\",\"isSingleValue\":true}','arg0.toList().max()',intDimMV1)"]},"rows":[[-2147483648],[4],[4],[42],[42],[52],[462],[462],[462],[462]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numE [...] # Text Search -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":6,"numEntriesScannedPostFilter":12,"numGroupsLimitReached":fals [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeU [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-4","Java C++ golang"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"tim [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-4","Java C++ golang"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"tim [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeU [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned" [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeU [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-4","Java C++ golang"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"tim [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-5","golang shell bash"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":8 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-5","golang shell bash"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":8 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-5","golang shell bash"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":8 [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG"],"columnNames":["stringDimSV1","count(*)"]},"rows":[["s1-2",2],["s1-0",2],["s1-7",1],["s1-4",1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":6,"numEntriesScannedPostFilter":6,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":6,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingS [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numD [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-4","Java C++ golang"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"nu [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-4","Java C++ golang"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"nu [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numD [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSeg [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-0","Java C++ Python"],["s1-0","Java C++ Python"],["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numD [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-4","Java C++ golang"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"nu [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-5","golang shell bash"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegme [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-5","golang shell bash"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegme [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","STRING"],"columnNames":["stringDimSV1","textDim1"]},"rows":[["s1-2","Java C++ golang"],["s1-2","Java C++ golang"],["s1-4","Java C++ golang"],["s1-5","golang shell bash"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-6","C++ golang python"],["s1-7","golang Java"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegme [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG"],"columnNames":["stringDimSV1","count(*)"]},"rows":[["s1-2",2],["s1-0",2],["s1-7",1],["s1-4",1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":6,"numEntriesScannedPostFilter":6,"numGroupsLimitReached":false,"totalDocs":10,"t [...] # Map -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","INT","INT"],"columnNames":["stringDimSV1","mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k4',mapDim1__VALUES)"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-2",7,7],["s1-4",7,8]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":15,"numGroupsLimitReached":false,"tota [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","INT","INT"],"columnNames":["stringDimSV1","mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k4',mapDim1__VALUES)"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-4",7,8],["s1-2",7,7]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":45,"numGroupsLimitReached":false,"tot [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE"],"columnNames":["max(mapvalue(mapDim1__KEYS,'k2',mapDim1__VALUES))","min(mapvalue(mapDim1__KEYS,'k3',mapDim1__VALUES))"]},"rows":[[31,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":20,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":3,"segmentStatistics":[],"traceInfo":{},"m [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE"],"columnNames":["max(mapvalue(mapDim1__KEYS,'k2',mapDim1__VALUES))","min(mapvalue(mapDim1__KEYS,'k3',mapDim1__VALUES))"]},"rows":[[1,2],[3,3],[5,6],[8,7],[31,32]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":20,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":5,"segmentStatist [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["INT","INT"],"columnNames":["mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k2',mapDim1__VALUES)"]},"rows":[[1,1],[3,3],[4,5]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":3,"numEntriesScannedPostFilter":6,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":3,"segmentStatistics":[],"traceInfo":{},"minConsu [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["INT","INT"],"columnNames":["mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k2',mapDim1__VALUES)"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numDocsScanned":0,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":12,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING"],"columnNames":["mapvalue(mapDim1__KEYS,'non-existing-key',mapDim1__VALUES)"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":0,"numSegmentsMatched":0,"numDocsScanned":0,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":3,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","INT","INT"],"columnNames":["stringDimSV1","mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k4',mapDim1__VALUES)"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-2",7,7],["s1-4",7,8]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegments [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","INT","INT"],"columnNames":["stringDimSV1","mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k4',mapDim1__VALUES)"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-4",7,8],["s1-2",7,7]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegments [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE"],"columnNames":["max(mapvalue(mapDim1__KEYS,'k2',mapDim1__VALUES))","min(mapvalue(mapDim1__KEYS,'k3',mapDim1__VALUES))"]},"rows":[[31,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFilter":20,"n [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE"],"columnNames":["max(mapvalue(mapDim1__KEYS,'k2',mapDim1__VALUES))","min(mapvalue(mapDim1__KEYS,'k3',mapDim1__VALUES))"]},"rows":[[1,2],[3,3],[5,6],[8,7],[31,32]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntrie [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["INT","INT"],"columnNames":["mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k2',mapDim1__VALUES)"]},"rows":[[1,1],[3,3],[4,5]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":3,"numEntriesScannedPostFilter":6,"numGroup [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["INT","INT"],"columnNames":["mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k2',mapDim1__VALUES)"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":0,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":fa [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING"],"columnNames":["mapvalue(mapDim1__KEYS,'non-existing-key',mapDim1__VALUES)"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":0,"numSegmentsMatched":0,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":0,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":3,"s [...] # Json Map -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","INT","INT"],"columnNames":["stringDimSV1","jsonextractscalar(mapDim2json,'$.k1','INT')","jsonextractscalar(mapDim2json,'$.k4','INT')"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-2",7,7],["s1-4",7,8]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalD [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","INT","INT"],"columnNames":["stringDimSV1","jsonextractscalar(mapDim2json,'$.k1','INT')","jsonextractscalar(mapDim2json,'$.k4','INT')"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-4",7,8],["s1-2",7,7]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":30,"numGroupsLimitReached":false,"total [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE"],"columnNames":["max(jsonextractscalar(mapDim2json,'$.k2','INT'))","min(jsonextractscalar(mapDim2json,'$.k3','INT'))"]},"rows":[[31,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":3,"segmentStatistics":[],"traceInfo":{},"min [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE"],"columnNames":["max(jsonextractscalar(mapDim2json,'$.k2','INT'))","min(jsonextractscalar(mapDim2json,'$.k3','INT'))"]},"rows":[[1,2],[3,3],[5,6],[8,7],[31,32]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":7,"segmentStatistic [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["INT","INT"],"columnNames":["jsonextractscalar(mapDim2json,'$.k1','INT')","jsonextractscalar(mapDim2json,'$.k2','INT')"]},"rows":[[1,1],[3,3],[4,5]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":3,"numEntriesScannedPostFilter":3,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":5,"segmentStatistics":[],"traceInfo":{},"minConsumi [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["INT"],"columnNames":["jsonextractscalar(mapDim2json,'$.non-existing-key','INT','-1')"]},"rows":[[-1],[-1],[-1],[-1],[-1],[-1],[-1],[-1],[-1],[-1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":4,"segmentStatistics":[],"traceInfo":{},"minConsum [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["INT"],"columnNames":["jsonextractscalar(mapDim2json,'$.non-existing-key','INT')"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numDocsScanned":0,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":7,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","INT","INT"],"columnNames":["stringDimSV1","jsonextractscalar(mapDim2json,'$.k1','INT')","jsonextractscalar(mapDim2json,'$.k4','INT')"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-2",7,7],["s1-4",7,8]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMa [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","INT","INT"],"columnNames":["stringDimSV1","jsonextractscalar(mapDim2json,'$.k1','INT')","jsonextractscalar(mapDim2json,'$.k4','INT')"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-4",7,8],["s1-2",7,7]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMa [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE"],"columnNames":["max(jsonextractscalar(mapDim2json,'$.k2','INT'))","min(jsonextractscalar(mapDim2json,'$.k3','INT'))"]},"rows":[[31,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"num [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["DOUBLE","DOUBLE"],"columnNames":["max(jsonextractscalar(mapDim2json,'$.k2','INT'))","min(jsonextractscalar(mapDim2json,'$.k3','INT'))"]},"rows":[[1,2],[3,3],[5,6],[8,7],[31,32]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesS [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["INT","INT"],"columnNames":["jsonextractscalar(mapDim2json,'$.k1','INT')","jsonextractscalar(mapDim2json,'$.k2','INT')"]},"rows":[[1,1],[3,3],[4,5]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":3,"numEntriesScannedPostFilter":3,"numGroupsL [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["INT"],"columnNames":["jsonextractscalar(mapDim2json,'$.non-existing-key','INT','-1')"]},"rows":[[-1],[-1],[-1],[-1],[-1],[-1],[-1],[-1],[-1],[-1]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroups [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["INT"],"columnNames":["jsonextractscalar(mapDim2json,'$.non-existing-key','INT')"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":0,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":7,"segme [...] # Misc -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG"],"columnNames":["count(*)"]},"rows":[[2],[1],[2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":5,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":6,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} -{"resultTable":{"dataSchema":{"columnDataTypes":["LONG"],"columnNames":["count(*)"]},"rows":[[6],[2],[2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":4,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":0} -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1"]},"rows":[["s1-7",6766,[392,462]],["s1-6",7611,[392,462]],["s1-6",7611,[392,462]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":33,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":4,"segmentStatistics":[],"trace [...] -{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1"]},"rows":[["s1-7",6766,[392,462]],["s1-6",7611,[392,462]],["s1-6",7611,[392,462]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":10,"numEntriesScannedPostFilter":33,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":3,"segmentStatistics":[],"trace [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG"],"columnNames":["count(*)"]},"rows":[[2],[1],[2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":5,"numEntriesScannedPostFilter":5,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":6,"segmentStatistics":[],"traceInfo":{},"minC [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["LONG"],"columnNames":["count(*)"]},"rows":[[6],[2],[2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":10,"timeUsedMs":4,"segmentStatistics":[],"traceInfo":{},"mi [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1"]},"rows":[["s1-7",6766,[392,462]],["s1-6",7611,[392,462]],["s1-6",7611,[392,462]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFi [...] +{"resultTable":{"dataSchema":{"columnDataTypes":["STRING","LONG","INT_ARRAY"],"columnNames":["stringDimSV1","longDimSV1","intDimMV1"]},"rows":[["s1-7",6766,[392,462]],["s1-6",7611,[392,462]],["s1-6",7611,[392,462]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":0,"numConsumingSegmentsProcessed":0,"numConsumingSegmentsMatched":0,"numDocsScanned":10,"numEntriesScannedPostFi [...] diff --git a/compatibility-verifier/sample-test-suite/config/query-results/feature-test-2-sql-realtime.results b/compatibility-verifier/sample-test-suite/config/query-results/feature-test-2-sql-realtime.results index 47f7a2805c..7589f9b070 100644 --- a/compatibility-verifier/sample-test-suite/config/query-results/feature-test-2-sql-realtime.results +++ b/compatibility-verifier/sample-test-suite/config/query-results/feature-test-2-sql-realtime.results @@ -18,47 +18,47 @@ # # Selection -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1"],"columnDataTypes":["LONG","INT_ARRAY"]},"rows":[[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[11,[32,42]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegment [...] -# {"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1"],"columnDataTypes":["LONG","INT_ARRAY"]},"rows":[[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter":10,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":6,"offlineThreadCpuTimeNs":0,"realtim [...] -{"isSuperset":true, "resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1"],"columnDataTypes":["LONG","INT_ARRAY"]},"rows":[[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":2,"numSegmentsProcessed":2,"numSegmentsMatched":2,"numDocsScanned":13,"numEntriesScannedPos [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1"],"columnDataTypes":["LONG","INT_ARRAY"]},"rows":[[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-214748 [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1"],"columnDataTypes":["LONG","INT_ARRAY"]},"rows":[[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[11,[32,42]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegment [...] +# {"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1"],"columnDataTypes":["LONG","INT_ARRAY"]},"rows":[[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":5,"numEntriesScannedPostFilter": [...] +{"isSuperset":true, "resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1"],"columnDataTypes":["LONG","INT_ARRAY"]},"rows":[[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":2,"numSegmentsProcessed":2,"numSegmentsMatched":2,"numConsumingSegmentsQueried":1,"numConsu [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1"],"columnDataTypes":["LONG","INT_ARRAY"]},"rows":[[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-2147483648]],[11,[32,42]],[11,[32,42]],[41,[42,52]],[-9223372036854775808,[-214748 [...] # Aggregation -{"resultTable":{"dataSchema":{"columnNames":["count(*)"],"columnDataTypes":["LONG"]},"rows":[[66]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":4,"offlineThreadCpuTimeNs":0,"realtimeThreadCpuTimeNs":0,"segmentStatistics":[],"traceInfo":{},"minConsumingFreshnessTimeMs":1620950080428} -{"resultTable":{"dataSchema":{"columnNames":["sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"],"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"]},"rows":[[2.576980527E10,-1.5032363248E10,0.0,6.0,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":264,"numGrou [...] -{"resultTable":{"dataSchema":{"columnNames":["count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"],"columnDataTypes":["LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"]},"rows":[[66,125,105.11969939145175,1383.2575757575758,250.00000000000003,6656.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesS [...] -{"resultTable":{"dataSchema":{"columnNames":["percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"],"columnDataTypes":["DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"]},"rows":[[7611.0,462.0,7611,462,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegme [...] -{"resultTable":{"dataSchema":{"columnNames":["percentile(longDimSV1, 80.01)","percentilemv(intDimMV1, 99.99)","percentileest(longDimSV1, 80.01)","percentileestmv(intDimMV1, 99.99)","percentiletdigest(longDimSV1, 80.01)","percentiletdigestmv(intDimMV1, 99.99)"],"columnDataTypes":["DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"]},"rows":[[7611.0,462.0,7611,462,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"nu [...] -{"resultTable":{"dataSchema":{"columnNames":["distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"],"columnDataTypes":["INT","INT","LONG","LONG"]},"rows":[[6,8,6,8]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":132,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":5,"offlineThre [...] +{"resultTable":{"dataSchema":{"columnNames":["count(*)"],"columnDataTypes":["LONG"]},"rows":[[66]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":4,"offlineThreadCpuTimeNs":0,"realtimeThreadCpuTime [...] +{"resultTable":{"dataSchema":{"columnNames":["sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"],"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"]},"rows":[[2.576980527E10,-1.5032363248E10,0.0,6.0,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed [...] +{"resultTable":{"dataSchema":{"columnNames":["count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"],"columnDataTypes":["LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"]},"rows":[[66,125,105.11969939145175,1383.2575757575758,250.00000000000003,6656.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1, [...] +{"resultTable":{"dataSchema":{"columnNames":["percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"],"columnDataTypes":["DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"]},"rows":[[7611.0,462.0,7611,462,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegme [...] +{"resultTable":{"dataSchema":{"columnNames":["percentile(longDimSV1, 80.01)","percentilemv(intDimMV1, 99.99)","percentileest(longDimSV1, 80.01)","percentileestmv(intDimMV1, 99.99)","percentiletdigest(longDimSV1, 80.01)","percentiletdigestmv(intDimMV1, 99.99)"],"columnDataTypes":["DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"]},"rows":[[7611.0,462.0,7611,462,7611.0,462.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"nu [...] +{"resultTable":{"dataSchema":{"columnNames":["distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"],"columnDataTypes":["INT","INT","LONG","LONG"]},"rows":[[6,8,6,8]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":66,"numEntr [...] # Selection & Filtering & Grouping on Aggregation -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","count(*)"],"columnDataTypes":["LONG","INT","LONG"]},"rows":[[-9223372036854775808,-2147483648,7],[11,32,14],[11,42,14],[41,42,7],[41,52,7]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":28,"numEntriesScannedPostFilter":56,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":6,"offlineThreadCpuTimeNs":0,"realti [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"],"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"]},"rows":[[-9223372036854775808,-2147483648,0.0,-1.5032385536E10,0.0,22.0,-9.223372036854776E18,-2.147483648E9],[11,32,140.0,1036.0,10.0,62.0,11.0,42.0],[11,42,140.0,1036.0,10.0,62.0,11.0,42.0],[41,42,98.0,658.0,14.0,72.0,41 [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"],"columnDataTypes":["LONG","INT","LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"]},"rows":[[-9223372036854775808,-2147483648,7,7,0.0,57.0,0.0,70.0],[11,32,14,28,22.100000381469727,67.0,0.0,10.0],[11,42,14,28,22.100000381469727,67.0,0.0,10.0],[41,42,7,14,24.100000381469727,77.0,0.0,10.0],[41,5 [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"],"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"]},"rows":[[-9223372036854775808,-2147483648,-9.223372036854776E18,-2.147483648E9,-9223372036854775808,-2147483648,-9.2233720368547 [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","percentile(longDimSV1, 80.01)","percentilemv(intDimMV1, 99.99)","percentileest(longDimSV1, 80.01)","percentileestmv(intDimMV1, 99.99)","percentiletdigest(longDimSV1, 80.01)","percentiletdigestmv(intDimMV1, 99.99)"],"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"]},"rows":[[-9223372036854775808,-2147483648,-9.223372036854776E18,-2.147483648E9,-9223372036854775808,-2147483648,-9.2233720 [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"],"columnDataTypes":["LONG","INT","INT","INT","LONG","LONG"]},"rows":[[-9223372036854775808,-2147483648,1,1,1,1],[11,32,1,2,1,2],[11,42,1,2,1,2],[41,42,1,2,1,2],[41,52,1,2,1,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMa [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","count(*)"],"columnDataTypes":["LONG","INT","LONG"]},"rows":[[-9223372036854775808,-2147483648,7],[11,32,14],[11,42,14],[41,42,7],[41,52,7]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":28,"numEntriesScannedPostFilter" [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","sum(intMetric1)","summv(intDimMV1)","min(intMetric1)","minmv(intDimMV2)","max(longDimSV1)","maxmv(intDimMV1)"],"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE","DOUBLE"]},"rows":[[-9223372036854775808,-2147483648,0.0,-1.5032385536E10,0.0,22.0,-9.223372036854776E18,-2.147483648E9],[11,32,140.0,1036.0,10.0,62.0,11.0,42.0],[11,42,140.0,1036.0,10.0,62.0,11.0,42.0],[41,42,98.0,658.0,14.0,72.0,41 [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","count(*)","countmv(intDimMV1)","avg(floatMetric1)","avgmv(intDimMV2)","minmaxrange(doubleMetric1)","minmaxrangemv(intDimMV2)"],"columnDataTypes":["LONG","INT","LONG","LONG","DOUBLE","DOUBLE","DOUBLE","DOUBLE"]},"rows":[[-9223372036854775808,-2147483648,7,7,0.0,57.0,0.0,70.0],[11,32,14,28,22.100000381469727,67.0,0.0,10.0],[11,42,14,28,22.100000381469727,67.0,0.0,10.0],[41,42,7,14,24.100000381469727,77.0,0.0,10.0],[41,5 [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","percentile(longDimSV1, 80.0)","percentilemv(intDimMV1, 90.0)","percentileest(longDimSV1, 80.0)","percentileestmv(intDimMV1, 90.0)","percentiletdigest(longDimSV1, 80.0)","percentiletdigestmv(intDimMV1, 90.0)"],"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"]},"rows":[[-9223372036854775808,-2147483648,-9.223372036854776E18,-2.147483648E9,-9223372036854775808,-2147483648,-9.2233720368547 [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","percentile(longDimSV1, 80.01)","percentilemv(intDimMV1, 99.99)","percentileest(longDimSV1, 80.01)","percentileestmv(intDimMV1, 99.99)","percentiletdigest(longDimSV1, 80.01)","percentiletdigestmv(intDimMV1, 99.99)"],"columnDataTypes":["LONG","INT","DOUBLE","DOUBLE","LONG","LONG","DOUBLE","DOUBLE"]},"rows":[[-9223372036854775808,-2147483648,-9.223372036854776E18,-2.147483648E9,-9223372036854775808,-2147483648,-9.2233720 [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","intDimMV1","distinctcount(longDimSV1)","distinctcountmv(intDimMV1)","distinctcounthll(longDimSV1)","distinctcounthllmv(intDimMV1)"],"columnDataTypes":["LONG","INT","INT","INT","LONG","LONG"]},"rows":[[-9223372036854775808,-2147483648,1,1,1,1],[11,32,1,2,1,2],[11,42,1,2,1,2],[41,42,1,2,1,2],[41,52,1,2,1,2]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMa [...] # Transformation Functions -{"resultTable":{"dataSchema":{"columnNames":["add(longDimSV1,sub(longDimSV2,'3'))","mod(intMetric1,'10')","div(doubleMetric1,mult(floatMetric1,'5'))"],"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE"]},"rows":[[15229.0,1.0,0.20076306285631254],[15229.0,7.0,0.20076306285631254],[13540.0,7.0,0.20076306285631254],[60.0,4.0,0.1999999968342762],[29.0,0.0,0.20904977014723267],[0.0,0.0,0.21652891879345226],[-9.223372036854776E18,0.0,"Infinity"]]},"exceptions":[],"numServersQueried":1,"numServersRe [...] -{"resultTable":{"dataSchema":{"columnNames":["floor(sqrt(doubleMetric1))","ceil(ln(longDimSV1))","exp(mod(abs(longDimSV2),'3'))"],"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE"]},"rows":[[3.0,0.0,7.38905609893065],[4.0,3.0,1.0],[4.0,4.0,2.718281828459045],[4.0,"NaN",7.38905609893065],[16.0,9.0,2.718281828459045],[16.0,9.0,1.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntri [...] -{"resultTable":{"dataSchema":{"columnNames":["arraylength(intDimMV1)","arraylength(valuein(stringDimMV2,'m2-2-0','m2-3-0'))","count(*)"],"columnDataTypes":["INT","INT","LONG"]},"rows":[[2,1,39],[1,1,7],[2,0,20]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":132,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":9,"offlineThreadCpuTimeNs":0,"real [...] -{"resultTable":{"dataSchema":{"columnNames":["valuein(intDimMV1,'3','32')","count(*)"],"columnDataTypes":["INT","LONG"]},"rows":[[3,14],[32,14]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":66,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":5,"offlineThreadCpuTimeNs":0,"realtimeThreadCpuTimeNs":0,"segmentStatistics":[],"traceInfo":{},"minCon [...] -{"resultTable":{"dataSchema":{"columnNames":["upper(stringDimSV1)","lower(textDim1)","reverse(stringDimSV2)","ltrim(substr(textDim1,'4','9'))","rtrim(substr(textDim1,'4','9'))"],"columnDataTypes":["STRING","STRING","STRING","STRING","STRING"]},"rows":[["S1-0","java c++ python","0-2s","C++ "," C++"],["S1-2","java c++ golang","2-2s","C++ "," C++"],["S1-4","java c++ golang","4-2s","C++ "," C++"],["S1-5","golang shell bash","llun","ng sh","ng sh"],["S1-6","c++ golang python","6-2s","golan"," [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV2","replace(stringDimSV2,'foo','bar')","codepoint(stringDimSV2)","rpad(stringDimSV2,'11','abc')","lpad(stringDimSV2,'11','xyz')"],"columnDataTypes":["STRING","STRING","INT","STRING","STRING"]},"rows":[["s2-2","s2-2",115,"s2-2abcabca","xyzxyzxs2-2"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":14,"numEntriesScannedPostFilter":1 [...] +{"resultTable":{"dataSchema":{"columnNames":["add(longDimSV1,sub(longDimSV2,'3'))","mod(intMetric1,'10')","div(doubleMetric1,mult(floatMetric1,'5'))"],"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE"]},"rows":[[15229.0,1.0,0.20076306285631254],[15229.0,7.0,0.20076306285631254],[13540.0,7.0,0.20076306285631254],[60.0,4.0,0.1999999968342762],[29.0,0.0,0.20904977014723267],[0.0,0.0,0.21652891879345226],[-9.223372036854776E18,0.0,"Infinity"]]},"exceptions":[],"numServersQueried":1,"numServersRe [...] +{"resultTable":{"dataSchema":{"columnNames":["floor(sqrt(doubleMetric1))","ceil(ln(longDimSV1))","exp(mod(abs(longDimSV2),'3'))"],"columnDataTypes":["DOUBLE","DOUBLE","DOUBLE"]},"rows":[[3.0,0.0,7.38905609893065],[4.0,3.0,1.0],[4.0,4.0,2.718281828459045],[4.0,"NaN",7.38905609893065],[16.0,9.0,2.718281828459045],[16.0,9.0,1.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried" [...] +{"resultTable":{"dataSchema":{"columnNames":["arraylength(intDimMV1)","arraylength(valuein(stringDimMV2,'m2-2-0','m2-3-0'))","count(*)"],"columnDataTypes":["INT","INT","LONG"]},"rows":[[2,1,39],[1,1,7],[2,0,20]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter [...] +{"resultTable":{"dataSchema":{"columnNames":["valuein(intDimMV1,'3','32')","count(*)"],"columnDataTypes":["INT","LONG"]},"rows":[[3,14],[32,14]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":66,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":5,"o [...] +{"resultTable":{"dataSchema":{"columnNames":["upper(stringDimSV1)","lower(textDim1)","reverse(stringDimSV2)","ltrim(substr(textDim1,'4','9'))","rtrim(substr(textDim1,'4','9'))"],"columnDataTypes":["STRING","STRING","STRING","STRING","STRING"]},"rows":[["S1-0","java c++ python","0-2s","C++ "," C++"],["S1-2","java c++ golang","2-2s","C++ "," C++"],["S1-4","java c++ golang","4-2s","C++ "," C++"],["S1-5","golang shell bash","llun","ng sh","ng sh"],["S1-6","c++ golang python","6-2s","golan"," [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV2","replace(stringDimSV2,'foo','bar')","codepoint(stringDimSV2)","rpad(stringDimSV2,'11','abc')","lpad(stringDimSV2,'11','xyz')"],"columnDataTypes":["STRING","STRING","INT","STRING","STRING"]},"rows":[["s2-2","s2-2",115,"s2-2abcabca","xyzxyzxs2-2"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmen [...] # Groovy Scripts -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","longDimSV2","groovy('{\"returnType\":\"LONG\",\"isSingleValue\":true}','arg0 + arg1',longDimSV1,longDimSV2)"],"columnDataTypes":["LONG","LONG","LONG"]},"rows":[[7611,7621,15232],[1,2,3],[41,22,63],[6766,6777,13543],[-9223372036854775808,32,-9223372036854775776],[11,21,32]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numE [...] -{"resultTable":{"dataSchema":{"columnNames":["count(*)","groovy('{\"returnType\":\"STRING\", \"isSingleValue\":true}','def result; if (arg0 < 0) { result = \"NEGATIVE\"; } else if (arg0 < 10) { result = \"SMALL\";} else if (arg0 < 50) { result = \"MEDIUM\";} else{result = \"LARGE\"}; return result',longDimSV1)"],"columnDataTypes":["LONG","STRING"]},"rows":[[24,"LARGE"],[21,"MEDIUM"],[14,"SMALL"],[7,"NEGATIVE"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQu [...] -{"resultTable":{"dataSchema":{"columnNames":["groovy('{\"returnType\":\"INT\",\"isSingleValue\":true}','arg0.toList().max()',intDimMV1)"],"columnDataTypes":["INT"]},"rows":[[-2147483648],[4],[42],[52],[462]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":66,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":17,"offlineThreadCpuTimeNs":0,"realtime [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","longDimSV2","groovy('{\"returnType\":\"LONG\",\"isSingleValue\":true}','arg0 + arg1',longDimSV1,longDimSV2)"],"columnDataTypes":["LONG","LONG","LONG"]},"rows":[[7611,7621,15232],[1,2,3],[41,22,63],[6766,6777,13543],[-9223372036854775808,32,-9223372036854775776],[11,21,32]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQuer [...] +{"resultTable":{"dataSchema":{"columnNames":["count(*)","groovy('{\"returnType\":\"STRING\", \"isSingleValue\":true}','def result; if (arg0 < 0) { result = \"NEGATIVE\"; } else if (arg0 < 10) { result = \"SMALL\";} else if (arg0 < 50) { result = \"MEDIUM\";} else{result = \"LARGE\"}; return result',longDimSV1)"],"columnDataTypes":["LONG","STRING"]},"rows":[[24,"LARGE"],[21,"MEDIUM"],[14,"SMALL"],[7,"NEGATIVE"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQu [...] +{"resultTable":{"dataSchema":{"columnNames":["groovy('{\"returnType\":\"INT\",\"isSingleValue\":true}','arg0.toList().max()',intDimMV1)"],"columnDataTypes":["INT"]},"rows":[[-2147483648],[4],[42],[52],[462]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":66 [...] # Json Map -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k4',mapDim1__VALUES)"],"columnDataTypes":["STRING","INT","INT"]},"rows":[["s1-2",7,7],["s1-7",31,32],["s1-4",7,8],["s1-2",4,7],["s1-6",7,10],["s1-5",7,7],["s1-0",1,2],["s1-0",3,3]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFil [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","jsonextractscalar(mapDim2json,'$.k1','INT')","jsonextractscalar(mapDim2json,'$.k4','INT')"],"columnDataTypes":["STRING","INT","INT"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-2",7,7],["s1-4",7,8],["s1-5",7,7],["s1-6",7,10],["s1-7",31,32]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilte [...] -{"resultTable":{"dataSchema":{"columnNames":["jsonextractscalar(mapDim2json,'$.k1','INT')","max(jsonextractscalar(mapDim2json,'$.k2','INT'))","min(jsonextractscalar(mapDim2json,'$.k3','INT'))"],"columnDataTypes":["INT","DOUBLE","DOUBLE"]},"rows":[[1,1.0,2.0],[3,3.0,3.0],[4,5.0,6.0],[7,8.0,7.0],[31,31.0,32.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilte [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","mapvalue(mapDim1__KEYS,'k1',mapDim1__VALUES)","mapvalue(mapDim1__KEYS,'k4',mapDim1__VALUES)"],"columnDataTypes":["STRING","INT","INT"]},"rows":[["s1-2",7,7],["s1-7",31,32],["s1-4",7,8],["s1-2",4,7],["s1-6",7,10],["s1-5",7,7],["s1-0",1,2],["s1-0",3,3]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsuming [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","jsonextractscalar(mapDim2json,'$.k1','INT')","jsonextractscalar(mapDim2json,'$.k4','INT')"],"columnDataTypes":["STRING","INT","INT"]},"rows":[["s1-0",1,2],["s1-0",3,3],["s1-2",4,7],["s1-2",7,7],["s1-4",7,8],["s1-5",7,7],["s1-6",7,10],["s1-7",31,32]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSe [...] +{"resultTable":{"dataSchema":{"columnNames":["jsonextractscalar(mapDim2json,'$.k1','INT')","max(jsonextractscalar(mapDim2json,'$.k2','INT'))","min(jsonextractscalar(mapDim2json,'$.k3','INT'))"],"columnDataTypes":["INT","DOUBLE","DOUBLE"]},"rows":[[1,1.0,2.0],[3,3.0,3.0],[4,5.0,6.0],[7,8.0,7.0],[31,31.0,32.0]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSe [...] # Misc -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","count(*)"],"columnDataTypes":["LONG","LONG"]},"rows":[[1,14],[41,7],[11,14]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":35,"numEntriesScannedPostFilter":35,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":4,"offlineThreadCpuTimeNs":0,"realtimeThreadCpuTimeNs":0,"segmentStatistics":[],"traceInfo":{},"minConsumingFre [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimMV2","count(*)"],"columnDataTypes":["STRING","LONG"]},"rows":[["m2-6-0",6],["m2-6-1",6],["m2-3-1",7],["m2-2-0",39],["m2-3-0",7],["m2-2-1",14],["m2-0-0",14],["m2-0-1",14]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numDocsScanned":66,"numEntriesScannedPostFilter":66,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":3,"offlineThreadCpuTi [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","longDimSV1","intDimMV1","intDimMV2"],"columnDataTypes":["STRING","LONG","INT_ARRAY","INT_ARRAY"]},"rows":[["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-2",11,[32,42],[62,72]],["s1-2",11,[32,42],[62,72]],["s1-2",11,[32,42],[62,72]],["s1-2",11,[32,42],[62,72]],["s1-2",11,[32,42 [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","count(*)"],"columnDataTypes":["LONG","LONG"]},"rows":[[1,14],[41,7],[11,14]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":35,"numEntriesScannedPostFilter":35,"numGroupsLimitReached":false,"totalDocs":66,"timeUsedMs":4,"offlineThr [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimMV2","count(*)"],"columnDataTypes":["STRING","LONG"]},"rows":[["m2-6-0",6],["m2-6-1",6],["m2-3-1",7],["m2-2-0",39],["m2-3-0",7],["m2-2-1",14],["m2-0-0",14],["m2-0-1",14]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":1,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":1,"numConsumingSegmentsProcessed":1,"numConsumingSegmentsMatched":1,"numDocsScanned":66,"numEntriesSca [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","longDimSV1","intDimMV1","intDimMV2"],"columnDataTypes":["STRING","LONG","INT_ARRAY","INT_ARRAY"]},"rows":[["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-4",41,[42,52],[72,82]],["s1-2",11,[32,42],[62,72]],["s1-2",11,[32,42],[62,72]],["s1-2",11,[32,42],[62,72]],["s1-2",11,[32,42],[62,72]],["s1-2",11,[32,42 [...] diff --git a/compatibility-verifier/sample-test-suite/config/query-results/feature-test-3-sql-realtime.results b/compatibility-verifier/sample-test-suite/config/query-results/feature-test-3-sql-realtime.results index 23102a964d..99fbc1e95c 100644 --- a/compatibility-verifier/sample-test-suite/config/query-results/feature-test-3-sql-realtime.results +++ b/compatibility-verifier/sample-test-suite/config/query-results/feature-test-3-sql-realtime.results @@ -18,30 +18,30 @@ # # rangeIndex[doubleDimSV1] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[210,95.98],[203,90.46],[288,90.63],[286,99.1],[24,97.12],[19,92.92],[10,95.01],[48,96.68],[169,96.07],[83,91.27],[80,91.65],[74,91.66],[71,96.88],[257,94.67],[253,97.08],[247,90.84],[243,91.92],[4,98.57],[193,98.22],[183,99.11],[179,97.93],[175,93.76],[69,98.18],[66,92.25],[64,93.3],[55,90.62],[52,96.87],[231,91.73],[278,98.6],[270,99.62],[268,99.08],[259,91.1],[107,95. [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[214,10.08],[206,17.88],[285,10.58],[170,19.98],[163,12.75],[158,12.29],[237,14.4],[235,14.13],[180,18.87],[25,12.83],[22,18.23],[17,17.61],[11,18.99],[261,19.59],[116,11.17],[149,14.85],[141,14.62],[78,16.54],[72,10.78],[53,17.61],[105,12.42],[96,19],[30,12.64],[251,13.9],[245,11.53]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":18 [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[286,99.1],[183,99.11],[270,99.62],[268,99.08]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":3,"numSegmentsMatched":3,"numConsumingSegmentsQueried":3,"numDocsScanned":4,"numEntriesScannedInFilter":12,"numEntriesScannedPostFilter":8,"numGroupsLimitReached":false,"totalDocs":300,"timeUsedMs":20,"offlineThread [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["STRING","STRING"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":0,"numSegmentsMatched":0,"numConsumingSegmentsQueried":3,"numDocsScanned":0,"numEntriesScannedInFilter":0,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":300,"timeUsedMs":3,"offlineThreadCpuTimeNs":0,"realtimeThreadCpuTimeNs":0,"offl [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[5,4.57],[3,0.88],[188,5.88],[186,3.35],[180,18.87],[178,4.3],[237,14.4],[235,14.13],[234,1.51],[233,6.78],[230,1.42],[229,3.05],[223,4.91],[219,7.23],[276,3.49],[261,19.59],[53,17.61],[214,10.08],[211,7.83],[206,17.88],[200,6.55],[149,14.85],[142,5.89],[141,14.62],[136,6.44],[133,9.69],[251,13.9],[245,11.53],[244,0.57],[105,12.42],[99,2.91],[96,19.0],[94,4.52],[93,5.03] [...] -{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[110,50.91],[103,45.1],[100,54.03],[153,48.87],[150,46.02],[146,50.13],[143,54.71],[252,48.4],[241,50.1],[240,52.83],[277,53.1],[68,54.37],[65,54.67],[57,46.19],[50,48.4],[197,50.2],[221,46.9],[28,45.71],[76,50.17],[131,48.94],[118,46.43],[113,48.9],[173,46.13],[167,45.82],[159,54.69],[155,45.03],[154,45.28],[299,48.14],[298,51.45],[283,48.46],[280,46.17],[190,51.27],[17 [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[210,95.98],[203,90.46],[288,90.63],[286,99.1],[24,97.12],[19,92.92],[10,95.01],[48,96.68],[169,96.07],[83,91.27],[80,91.65],[74,91.66],[71,96.88],[257,94.67],[253,97.08],[247,90.84],[243,91.92],[4,98.57],[193,98.22],[183,99.11],[179,97.93],[175,93.76],[69,98.18],[66,92.25],[64,93.3],[55,90.62],[52,96.87],[231,91.73],[278,98.6],[270,99.62],[268,99.08],[259,91.1],[107,95. [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[214,10.08],[206,17.88],[285,10.58],[170,19.98],[163,12.75],[158,12.29],[237,14.4],[235,14.13],[180,18.87],[25,12.83],[22,18.23],[17,17.61],[11,18.99],[261,19.59],[116,11.17],[149,14.85],[141,14.62],[78,16.54],[72,10.78],[53,17.61],[105,12.42],[96,19],[30,12.64],[251,13.9],[245,11.53]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":18 [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[286,99.1],[183,99.11],[270,99.62],[268,99.08]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":3,"numSegmentsMatched":3,"numConsumingSegmentsQueried":3,"numConsumingSegmentsProcessed":3,"numConsumingSegmentsMatched":3,"numDocsScanned":4,"numEntriesScannedInFilter":12,"numEntriesScannedPostFilter":8,"numGroups [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["STRING","STRING"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":0,"numSegmentsMatched":0,"numConsumingSegmentsQueried":3,"numConsumingSegmentsProcessed":3,"numConsumingSegmentsMatched":3,"numDocsScanned":0,"numEntriesScannedInFilter":0,"numEntriesScannedPostFilter":0,"numGroupsLimitReached":false,"totalDocs":300,"timeUsed [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[5,4.57],[3,0.88],[188,5.88],[186,3.35],[180,18.87],[178,4.3],[237,14.4],[235,14.13],[234,1.51],[233,6.78],[230,1.42],[229,3.05],[223,4.91],[219,7.23],[276,3.49],[261,19.59],[53,17.61],[214,10.08],[211,7.83],[206,17.88],[200,6.55],[149,14.85],[142,5.89],[141,14.62],[136,6.44],[133,9.69],[251,13.9],[245,11.53],[244,0.57],[105,12.42],[99,2.91],[96,19.0],[94,4.52],[93,5.03] [...] +{"resultTable":{"dataSchema":{"columnNames":["longDimSV1","doubleDimSV1"],"columnDataTypes":["LONG","DOUBLE"]},"rows":[[110,50.91],[103,45.1],[100,54.03],[153,48.87],[150,46.02],[146,50.13],[143,54.71],[252,48.4],[241,50.1],[240,52.83],[277,53.1],[68,54.37],[65,54.67],[57,46.19],[50,48.4],[197,50.2],[221,46.9],[28,45.71],[76,50.17],[131,48.94],[118,46.43],[113,48.9],[173,46.13],[167,45.82],[159,54.69],[155,45.03],[154,45.28],[299,48.14],[298,51.45],[283,48.46],[280,46.17],[190,51.27],[17 [...] # bloomFilterColumns[stringDimSV1]; varLengthDictionaryColumns[stringDimSV1]; noDictionaryColumns["stringDimSV2","intMetric1", "longMetric1", "floatMetric1", "doubleMetric1", "bytesMetric1"] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["qmxauaacotyezcqw","knurucwrydcufd",6563,281474976717652,62.72,6.2E45,"deadbeef"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":2,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3,"numDoc [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numConsumingSegmentsQueried":3,"numDocsScanned":0,"numEntriesScannedInFilter":0,"numEntriesScannedPostFilter":0,"numGrou [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["pbbeecjjabupkrf","kjuhobuoynryay",188,281474976710683,72.21,9.223372036854776E16,"d54d0507"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":2,"numSegmentsMatched":1,"numConsumingSegmentsQuerie [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numConsumingSegmentsQueried":3,"numDocsScanned":0,"numEntriesScannedInFilter":0,"numEntriesScannedPostFilter":0,"numGrou [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["ljuwlnaailbvukpk","dqybtowfjeam",8046,281474976718276,77.92,9.223372036854776E16,"01a0bc"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":3,"numSegmentsMatched":1,"numConsumingSegmentsQueried" [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["mcpilzfivcfwci","wldocwdhaqyl",8033,281474976712017,91.08,9.223372036854776E16,"01a0bc"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":2,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3 [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["pigrefok","lvuziytyuftibms",2084,281474976716587,14.59,9.223372036854776E16,"d54d0507"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":2,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3, [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numConsumingSegmentsQueried":3,"numDocsScanned":0,"numEntriesScannedInFilter":0,"numEntriesScannedPostFilter":0,"numGrou [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["qmxauaacotyezcqw","knurucwrydcufd",6563,281474976717652,62.72,6.2E45,"deadbeef"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":2,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3,"numCon [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numConsumingSegmentsQueried":3,"numConsumingSegmentsProcessed":3,"numConsumingSegmentsMatched":3,"numDocsScanned":0,"num [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["pbbeecjjabupkrf","kjuhobuoynryay",188,281474976710683,72.21,9.223372036854776E16,"d54d0507"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":2,"numSegmentsMatched":1,"numConsumingSegmentsQuerie [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numConsumingSegmentsQueried":3,"numConsumingSegmentsProcessed":3,"numConsumingSegmentsMatched":3,"numDocsScanned":0,"num [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["ljuwlnaailbvukpk","dqybtowfjeam",8046,281474976718276,77.92,9.223372036854776E16,"01a0bc"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":3,"numSegmentsMatched":1,"numConsumingSegmentsQueried" [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["mcpilzfivcfwci","wldocwdhaqyl",8033,281474976712017,91.08,9.223372036854776E16,"01a0bc"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":2,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3 [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["pigrefok","lvuziytyuftibms",2084,281474976716587,14.59,9.223372036854776E16,"d54d0507"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":2,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3, [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":0,"numConsumingSegmentsQueried":3,"numConsumingSegmentsProcessed":3,"numConsumingSegmentsMatched":3,"numDocsScanned":0,"num [...] # partitionedColumn[longDimSV1]; varLengthDictionaryColumns[stringDimSV1]; noDictionaryColumns["stringDimSV2","intMetric1", "longMetric1", "floatMetric1", "doubleMetric1", "bytesMetric1"] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["tsvknmxua","hkfviagqwaodjs",5881,281474976720355,54.82,9.223372036854776E16,"deed0507"],["udiyszdw","ezxcchzpb",2805,281474976717544,5.44,9.223372036854776E16,"deadbeef"],["bhxpgexg","oydnfucyiov",5590,281474976718795,44.23,9.223372036854776E16,"d54d0507"] [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["jkuhidefpqry","nxnjlzdrtnwpwvu",2064,281474976714265,60.0,9.223372036854776E16,"deed0507"],["bhxpgexg","oydnfucyiov",5590,281474976718795,44.23,9.223372036854776E16,"d54d0507"],["oerfxfdpqgr","eebimdxgtx",1802,281474976719813,54.11,9.223372036854776E16,"de [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["jkxftqwgzszefw","lvfwsewnj",2824,281474976716411,61.71,9.223372036854776E16,"deadbeef"],["mvbprcfsljhkclt","quzbozdgxhyzd",6314,281474976712191,70.1,9.223372036854776E16,"deadbeef"],["otrfcluhre","hcjaxekilj",8888,281474976719670,32.3,9.223372036854776E16, [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["jkxftqwgzszefw","lvfwsewnj",2824,281474976716411,61.71,9.223372036854776E16,"deadbeef"],["sxvjftsrj","unsamzlmse",8855,281474976710712,99.11,9.223372036854776E16,"deadbeef"],["rvvazctyuhm","jzouegxpuqaeod",3575,281474976717622,46.08,9.223372036854776E16,"d [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["jyjbskss","ktzbslhqxociw",5655,281474976710734,36.66,9.223372036854776E16,"01a0bc"],["ytdhswvrujrhlu","kljynwcigrbwvjas",2537,281474976713189,85.2,9.223372036854776E16,"01a0bc"],["kjokwtkmuqz","ynefztocmqdr",4797,281474976713019,45.1,9.223372036854776E16," [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[ ["rgitlxyuwudikl","ixbnwcnvfl",4264,281474976719401,91.14,9.223372036854776E16,"01a0bc"],["rkoutvhyxiyabvf","olcqnezapdibpg",5939,281474976717872,93.17,9.223372036854776E16,"d54d0507"],["buympgyn","sjusmkrcptzk",6951,281474976715188,74.96,9.223372036854776E [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["oerfxfdpqgr","eebimdxgtx",1802,281474976719813,54.11,9.223372036854776E16,"deadbeef"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3,"n [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["xaoqldkhnqeslf","hquvdmomblsdgk",2348,281474976717334,82.13,9.223372036854776E16,"d54d0507"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQuerie [...] -{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["hcqapafepmu","xhjeavrutltde",1397,281474976715751,90.35,9.223372036854776E16,"d54d0507"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3 [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["tsvknmxua","hkfviagqwaodjs",5881,281474976720355,54.82,9.223372036854776E16,"deed0507"],["udiyszdw","ezxcchzpb",2805,281474976717544,5.44,9.223372036854776E16,"deadbeef"],["bhxpgexg","oydnfucyiov",5590,281474976718795,44.23,9.223372036854776E16,"d54d0507"] [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["jkuhidefpqry","nxnjlzdrtnwpwvu",2064,281474976714265,60.0,9.223372036854776E16,"deed0507"],["bhxpgexg","oydnfucyiov",5590,281474976718795,44.23,9.223372036854776E16,"d54d0507"],["oerfxfdpqgr","eebimdxgtx",1802,281474976719813,54.11,9.223372036854776E16,"de [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["jkxftqwgzszefw","lvfwsewnj",2824,281474976716411,61.71,9.223372036854776E16,"deadbeef"],["mvbprcfsljhkclt","quzbozdgxhyzd",6314,281474976712191,70.1,9.223372036854776E16,"deadbeef"],["otrfcluhre","hcjaxekilj",8888,281474976719670,32.3,9.223372036854776E16, [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["jkxftqwgzszefw","lvfwsewnj",2824,281474976716411,61.71,9.223372036854776E16,"deadbeef"],["sxvjftsrj","unsamzlmse",8855,281474976710712,99.11,9.223372036854776E16,"deadbeef"],["rvvazctyuhm","jzouegxpuqaeod",3575,281474976717622,46.08,9.223372036854776E16,"d [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["jyjbskss","ktzbslhqxociw",5655,281474976710734,36.66,9.223372036854776E16,"01a0bc"],["ytdhswvrujrhlu","kljynwcigrbwvjas",2537,281474976713189,85.2,9.223372036854776E16,"01a0bc"],["kjokwtkmuqz","ynefztocmqdr",4797,281474976713019,45.1,9.223372036854776E16," [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[ ["rgitlxyuwudikl","ixbnwcnvfl",4264,281474976719401,91.14,9.223372036854776E16,"01a0bc"],["rkoutvhyxiyabvf","olcqnezapdibpg",5939,281474976717872,93.17,9.223372036854776E16,"d54d0507"],["buympgyn","sjusmkrcptzk",6951,281474976715188,74.96,9.223372036854776E [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["oerfxfdpqgr","eebimdxgtx",1802,281474976719813,54.11,9.223372036854776E16,"deadbeef"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3,"n [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["xaoqldkhnqeslf","hquvdmomblsdgk",2348,281474976717334,82.13,9.223372036854776E16,"d54d0507"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQuerie [...] +{"resultTable":{"dataSchema":{"columnNames":["stringDimSV1","stringDimSV2","intMetric1","longMetric1","floatMetric1","doubleMetric1","bytesMetric1"],"columnDataTypes":["STRING","STRING","INT","LONG","FLOAT","DOUBLE","BYTES"]},"rows":[["hcqapafepmu","xhjeavrutltde",1397,281474976715751,90.35,9.223372036854776E16,"d54d0507"]]},"exceptions":[],"numServersQueried":1,"numServersResponded":1,"numSegmentsQueried":17,"numSegmentsProcessed":1,"numSegmentsMatched":1,"numConsumingSegmentsQueried":3 [...] diff --git a/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java b/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java index 3f2bd37322..14c9a71550 100644 --- a/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java +++ b/pinot-broker/src/main/java/org/apache/pinot/broker/requesthandler/BaseBrokerRequestHandler.java @@ -670,7 +670,8 @@ public abstract class BaseBrokerRequestHandler implements BrokerRequestHandler { if (_queryLogRateLimiter.tryAcquire() || forceLog(brokerResponse, totalTimeMs)) { // Table name might have been changed (with suffix _OFFLINE/_REALTIME appended) LOGGER.info("requestId={},table={},timeMs={},docs={}/{},entries={}/{}," - + "segments(queried/processed/matched/consuming/unavailable):{}/{}/{}/{}/{},consumingFreshnessTimeMs={}," + + "segments(queried/processed/matched/consumingQueried/consumingMatched/consumingProcessed/unavailable):" + + "{}/{}/{}/{}/{}/{}/{},consumingFreshnessTimeMs={}," + "servers={}/{},groupLimitReached={},brokerReduceTimeMs={},exceptions={},serverStats={}," + "offlineThreadCpuTimeNs(total/thread/sysActivity/resSer):{}/{}/{}/{}," + "realtimeThreadCpuTimeNs(total/thread/sysActivity/resSer):{}/{}/{}/{},query={}", requestId, tableName, @@ -678,6 +679,7 @@ public abstract class BaseBrokerRequestHandler implements BrokerRequestHandler { brokerResponse.getNumEntriesScannedInFilter(), brokerResponse.getNumEntriesScannedPostFilter(), brokerResponse.getNumSegmentsQueried(), brokerResponse.getNumSegmentsProcessed(), brokerResponse.getNumSegmentsMatched(), brokerResponse.getNumConsumingSegmentsQueried(), + brokerResponse.getNumConsumingSegmentsProcessed(), brokerResponse.getNumConsumingSegmentsMatched(), numUnavailableSegments, brokerResponse.getMinConsumingFreshnessTimeMs(), brokerResponse.getNumServersResponded(), brokerResponse.getNumServersQueried(), brokerResponse.isNumGroupsLimitReached(), requestContext.getReduceTimeMillis(), diff --git a/pinot-common/src/main/java/org/apache/pinot/common/response/BrokerResponse.java b/pinot-common/src/main/java/org/apache/pinot/common/response/BrokerResponse.java index 7e269f6421..41a4769cc3 100644 --- a/pinot-common/src/main/java/org/apache/pinot/common/response/BrokerResponse.java +++ b/pinot-common/src/main/java/org/apache/pinot/common/response/BrokerResponse.java @@ -107,6 +107,16 @@ public interface BrokerResponse { */ long getNumConsumingSegmentsQueried(); + /** + * Get number of consuming segments processed by server after server side pruning + */ + long getNumConsumingSegmentsProcessed(); + + /** + * Get number of consuming segments that had at least one matching document + */ + long getNumConsumingSegmentsMatched(); + /** * Get the minimum freshness timestamp across consuming segments that were queried */ diff --git a/pinot-common/src/main/java/org/apache/pinot/common/response/broker/BrokerResponseNative.java b/pinot-common/src/main/java/org/apache/pinot/common/response/broker/BrokerResponseNative.java index d9df0dc67e..99109f0691 100644 --- a/pinot-common/src/main/java/org/apache/pinot/common/response/broker/BrokerResponseNative.java +++ b/pinot-common/src/main/java/org/apache/pinot/common/response/broker/BrokerResponseNative.java @@ -42,10 +42,10 @@ import org.apache.pinot.spi.utils.JsonUtils; */ @JsonPropertyOrder({ "resultTable", "exceptions", "numServersQueried", "numServersResponded", "numSegmentsQueried", - "numSegmentsProcessed", "numSegmentsMatched", "numConsumingSegmentsQueried", "numDocsScanned", - "numEntriesScannedInFilter", "numEntriesScannedPostFilter", "numGroupsLimitReached", "totalDocs", "timeUsedMs", - "offlineThreadCpuTimeNs", "realtimeThreadCpuTimeNs", "offlineSystemActivitiesCpuTimeNs", - "realtimeSystemActivitiesCpuTimeNs", "offlineResponseSerializationCpuTimeNs", + "numSegmentsProcessed", "numSegmentsMatched", "numConsumingSegmentsQueried", "numConsumingSegmentsProcessed", + "numConsumingSegmentsMatched", "numDocsScanned", "numEntriesScannedInFilter", "numEntriesScannedPostFilter", + "numGroupsLimitReached", "totalDocs", "timeUsedMs", "offlineThreadCpuTimeNs", "realtimeThreadCpuTimeNs", + "offlineSystemActivitiesCpuTimeNs", "realtimeSystemActivitiesCpuTimeNs", "offlineResponseSerializationCpuTimeNs", "realtimeResponseSerializationCpuTimeNs", "offlineTotalCpuTimeNs", "realtimeTotalCpuTimeNs", "segmentStatistics", "traceInfo" }) @@ -66,6 +66,8 @@ public class BrokerResponseNative implements BrokerResponse { private long _numSegmentsProcessed = 0L; private long _numSegmentsMatched = 0L; private long _numConsumingSegmentsQueried = 0L; + private long _numConsumingSegmentsProcessed = 0L; + private long _numConsumingSegmentsMatched = 0L; // the timestamp indicating the freshness of the data queried in consuming segments. // This can be ingestion timestamp if provided by the stream, or the last index time private long _minConsumingFreshnessTimeMs = 0L; @@ -430,6 +432,27 @@ public class BrokerResponseNative implements BrokerResponse { _numConsumingSegmentsQueried = numConsumingSegmentsQueried; } + @JsonProperty("numConsumingSegmentsProcessed") + @Override + public long getNumConsumingSegmentsProcessed() { + return _numConsumingSegmentsProcessed; + } + @JsonProperty("numConsumingSegmentsProcessed") + public void setNumConsumingSegmentsProcessed(long numConsumingSegmentsProcessed) { + _numConsumingSegmentsProcessed = numConsumingSegmentsProcessed; + } + + @JsonProperty("numConsumingSegmentsMatched") + @Override + public long getNumConsumingSegmentsMatched() { + return _numConsumingSegmentsMatched; + } + + @JsonProperty("numConsumingSegmentsMatched") + public void setNumConsumingSegmentsMatched(long numConsumingSegmentsMatched) { + _numConsumingSegmentsMatched = numConsumingSegmentsMatched; + } + @JsonProperty("minConsumingFreshnessTimeMs") @Override public long getMinConsumingFreshnessTimeMs() { diff --git a/pinot-common/src/main/java/org/apache/pinot/common/utils/DataTable.java b/pinot-common/src/main/java/org/apache/pinot/common/utils/DataTable.java index 0898808a86..05470f1b20 100644 --- a/pinot-common/src/main/java/org/apache/pinot/common/utils/DataTable.java +++ b/pinot-common/src/main/java/org/apache/pinot/common/utils/DataTable.java @@ -107,6 +107,8 @@ public interface DataTable { NUM_SEGMENTS_PROCESSED("numSegmentsProcessed", MetadataValueType.INT), NUM_SEGMENTS_MATCHED("numSegmentsMatched", MetadataValueType.INT), NUM_CONSUMING_SEGMENTS_QUERIED("numConsumingSegmentsQueried", MetadataValueType.INT), + NUM_CONSUMING_SEGMENTS_PROCESSED("numConsumingSegmentsProcessed", MetadataValueType.INT), + NUM_CONSUMING_SEGMENTS_MATCHED("numConsumingSegmentsMatched", MetadataValueType.INT), MIN_CONSUMING_FRESHNESS_TIME_MS("minConsumingFreshnessTimeMs", MetadataValueType.LONG), TOTAL_DOCS("totalDocs", MetadataValueType.LONG), NUM_GROUPS_LIMIT_REACHED("numGroupsLimitReached", MetadataValueType.STRING), diff --git a/pinot-core/src/main/java/org/apache/pinot/core/operator/blocks/IntermediateResultsBlock.java b/pinot-core/src/main/java/org/apache/pinot/core/operator/blocks/IntermediateResultsBlock.java index 6bc5e6e016..87e295ea61 100644 --- a/pinot-core/src/main/java/org/apache/pinot/core/operator/blocks/IntermediateResultsBlock.java +++ b/pinot-core/src/main/java/org/apache/pinot/core/operator/blocks/IntermediateResultsBlock.java @@ -69,6 +69,8 @@ public class IntermediateResultsBlock implements Block { private long _numTotalDocs; private int _numSegmentsProcessed; private int _numSegmentsMatched; + private int _numConsumingSegmentsProcessed; + private int _numConsumingSegmentsMatched; private boolean _numGroupsLimitReached; private int _numResizes; private long _resizeTimeMs; @@ -269,6 +271,24 @@ public class IntermediateResultsBlock implements Block { _numSegmentsMatched = numSegmentsMatched; } + @VisibleForTesting + public int getNumConsumingSegmentsProcessed() { + return _numConsumingSegmentsProcessed; + } + + public void setNumConsumingSegmentsProcessed(int numConsumingSegmentsProcessed) { + _numConsumingSegmentsProcessed = numConsumingSegmentsProcessed; + } + + @VisibleForTesting + public int getNumConsumingSegmentsMatched() { + return _numConsumingSegmentsMatched; + } + + public void setNumConsumingSegmentsMatched(int numConsumingSegmentsMatched) { + _numConsumingSegmentsMatched = numConsumingSegmentsMatched; + } + @VisibleForTesting public long getNumTotalDocs() { return _numTotalDocs; @@ -468,6 +488,10 @@ public class IntermediateResultsBlock implements Block { .put(MetadataKey.NUM_ENTRIES_SCANNED_POST_FILTER.getName(), String.valueOf(_numEntriesScannedPostFilter)); dataTable.getMetadata().put(MetadataKey.NUM_SEGMENTS_PROCESSED.getName(), String.valueOf(_numSegmentsProcessed)); dataTable.getMetadata().put(MetadataKey.NUM_SEGMENTS_MATCHED.getName(), String.valueOf(_numSegmentsMatched)); + dataTable.getMetadata().put(MetadataKey.NUM_CONSUMING_SEGMENTS_PROCESSED.getName(), + String.valueOf(_numConsumingSegmentsProcessed)); + dataTable.getMetadata().put(MetadataKey.NUM_CONSUMING_SEGMENTS_MATCHED.getName(), + String.valueOf(_numConsumingSegmentsMatched)); dataTable.getMetadata().put(MetadataKey.NUM_RESIZES.getName(), String.valueOf(_numResizes)); dataTable.getMetadata().put(MetadataKey.RESIZE_TIME_MS.getName(), String.valueOf(_resizeTimeMs)); diff --git a/pinot-core/src/main/java/org/apache/pinot/core/operator/combine/CombineOperatorUtils.java b/pinot-core/src/main/java/org/apache/pinot/core/operator/combine/CombineOperatorUtils.java index 5f5faf8ec0..4b6ee12a0b 100644 --- a/pinot-core/src/main/java/org/apache/pinot/core/operator/combine/CombineOperatorUtils.java +++ b/pinot-core/src/main/java/org/apache/pinot/core/operator/combine/CombineOperatorUtils.java @@ -22,6 +22,7 @@ import java.util.List; import org.apache.pinot.core.common.Operator; import org.apache.pinot.core.operator.ExecutionStatistics; import org.apache.pinot.core.operator.blocks.IntermediateResultsBlock; +import org.apache.pinot.segment.spi.MutableSegment; @SuppressWarnings("rawtypes") @@ -56,6 +57,8 @@ public class CombineOperatorUtils { long threadCpuTimeNs, int numServerThreads) { int numSegmentsProcessed = operators.size(); int numSegmentsMatched = 0; + int numConsumingSegmentsProcessed = 0; + int numConsumingSegmentsMatched = 0; long numDocsScanned = 0; long numEntriesScannedInFilter = 0; long numEntriesScannedPostFilter = 0; @@ -65,6 +68,15 @@ public class CombineOperatorUtils { if (executionStatistics.getNumDocsScanned() > 0) { numSegmentsMatched++; } + try { + if (operator.getIndexSegment() instanceof MutableSegment) { + numConsumingSegmentsProcessed += 1; + if (executionStatistics.getNumDocsScanned() > 0) { + numConsumingSegmentsMatched++; + } + } + } catch (UnsupportedOperationException ignored) { } + numDocsScanned += executionStatistics.getNumDocsScanned(); numEntriesScannedInFilter += executionStatistics.getNumEntriesScannedInFilter(); numEntriesScannedPostFilter += executionStatistics.getNumEntriesScannedPostFilter(); @@ -72,6 +84,8 @@ public class CombineOperatorUtils { } resultsBlock.setNumSegmentsProcessed(numSegmentsProcessed); resultsBlock.setNumSegmentsMatched(numSegmentsMatched); + resultsBlock.setNumConsumingSegmentsProcessed(numConsumingSegmentsProcessed); + resultsBlock.setNumConsumingSegmentsMatched(numConsumingSegmentsMatched); resultsBlock.setNumDocsScanned(numDocsScanned); resultsBlock.setNumEntriesScannedInFilter(numEntriesScannedInFilter); resultsBlock.setNumEntriesScannedPostFilter(numEntriesScannedPostFilter); diff --git a/pinot-core/src/main/java/org/apache/pinot/core/query/executor/ServerQueryExecutorV1Impl.java b/pinot-core/src/main/java/org/apache/pinot/core/query/executor/ServerQueryExecutorV1Impl.java index 5c5166298d..1f097547f9 100644 --- a/pinot-core/src/main/java/org/apache/pinot/core/query/executor/ServerQueryExecutorV1Impl.java +++ b/pinot-core/src/main/java/org/apache/pinot/core/query/executor/ServerQueryExecutorV1Impl.java @@ -312,6 +312,8 @@ public class ServerQueryExecutorV1Impl implements QueryExecutor { metadata.put(MetadataKey.NUM_ENTRIES_SCANNED_POST_FILTER.getName(), "0"); metadata.put(MetadataKey.NUM_SEGMENTS_PROCESSED.getName(), "0"); metadata.put(MetadataKey.NUM_SEGMENTS_MATCHED.getName(), "0"); + metadata.put(MetadataKey.NUM_CONSUMING_SEGMENTS_PROCESSED.getName(), "0"); + metadata.put(MetadataKey.NUM_CONSUMING_SEGMENTS_MATCHED.getName(), "0"); metadata.put(MetadataKey.NUM_SEGMENTS_PRUNED_BY_SERVER.getName(), String.valueOf(totalSegments)); addPrunerStats(metadata, prunerStats); return dataTable; diff --git a/pinot-core/src/main/java/org/apache/pinot/core/query/reduce/BaseReduceService.java b/pinot-core/src/main/java/org/apache/pinot/core/query/reduce/BaseReduceService.java index 1e9b6abcf8..6417228b55 100644 --- a/pinot-core/src/main/java/org/apache/pinot/core/query/reduce/BaseReduceService.java +++ b/pinot-core/src/main/java/org/apache/pinot/core/query/reduce/BaseReduceService.java @@ -133,6 +133,8 @@ public abstract class BaseReduceService { private long _numSegmentsProcessed = 0L; private long _numSegmentsMatched = 0L; private long _numConsumingSegmentsQueried = 0L; + private long _numConsumingSegmentsProcessed = 0L; + private long _numConsumingSegmentsMatched = 0L; private long _minConsumingFreshnessTimeMs = Long.MAX_VALUE; private long _numTotalDocs = 0L; private long _offlineThreadCpuTimeNs = 0L; @@ -200,6 +202,16 @@ public abstract class BaseReduceService { _numConsumingSegmentsQueried += Long.parseLong(numConsumingSegmentsQueriedString); } + String numConsumingSegmentsProcessed = metadata.get(MetadataKey.NUM_CONSUMING_SEGMENTS_PROCESSED.getName()); + if (numConsumingSegmentsProcessed != null) { + _numConsumingSegmentsProcessed += Long.parseLong(numConsumingSegmentsProcessed); + } + + String numConsumingSegmentsMatched = metadata.get(MetadataKey.NUM_CONSUMING_SEGMENTS_MATCHED.getName()); + if (numConsumingSegmentsMatched != null) { + _numConsumingSegmentsMatched += Long.parseLong(numConsumingSegmentsMatched); + } + String minConsumingFreshnessTimeMsString = metadata.get(MetadataKey.MIN_CONSUMING_FRESHNESS_TIME_MS.getName()); if (minConsumingFreshnessTimeMsString != null) { _minConsumingFreshnessTimeMs = @@ -300,6 +312,8 @@ public abstract class BaseReduceService { brokerResponseNative.setNumConsumingSegmentsQueried(_numConsumingSegmentsQueried); brokerResponseNative.setMinConsumingFreshnessTimeMs(_minConsumingFreshnessTimeMs); } + brokerResponseNative.setNumConsumingSegmentsProcessed(_numConsumingSegmentsProcessed); + brokerResponseNative.setNumConsumingSegmentsMatched(_numConsumingSegmentsMatched); // Update broker metrics. if (brokerMetrics != null) { diff --git a/pinot-core/src/main/java/org/apache/pinot/core/query/scheduler/QueryScheduler.java b/pinot-core/src/main/java/org/apache/pinot/core/query/scheduler/QueryScheduler.java index ff38d25563..069a84337c 100644 --- a/pinot-core/src/main/java/org/apache/pinot/core/query/scheduler/QueryScheduler.java +++ b/pinot-core/src/main/java/org/apache/pinot/core/query/scheduler/QueryScheduler.java @@ -186,6 +186,10 @@ public abstract class QueryScheduler { MetadataKey.NUM_SEGMENTS_PRUNED_BY_VALUE.getName(), INVALID_SEGMENTS_COUNT)); long numSegmentsConsuming = Long.parseLong( dataTableMetadata.getOrDefault(MetadataKey.NUM_CONSUMING_SEGMENTS_QUERIED.getName(), INVALID_SEGMENTS_COUNT)); + long numConsumingSegmentsProcessed = Long.parseLong( + dataTableMetadata.getOrDefault(MetadataKey.NUM_CONSUMING_SEGMENTS_PROCESSED.getName(), INVALID_SEGMENTS_COUNT)); + long numConsumingSegmentsMatched = Long.parseLong( + dataTableMetadata.getOrDefault(MetadataKey.NUM_CONSUMING_SEGMENTS_MATCHED.getName(), INVALID_SEGMENTS_COUNT)); long minConsumingFreshnessMs = Long.parseLong( dataTableMetadata.getOrDefault(MetadataKey.MIN_CONSUMING_FRESHNESS_TIME_MS.getName(), INVALID_FRESHNESS_MS)); int numResizes = @@ -242,11 +246,13 @@ public abstract class QueryScheduler { // Please add new entries at the end if (_queryLogRateLimiter.tryAcquire() || forceLog(schedulerWaitMs, numDocsScanned, numSegmentsPrunedInvalid)) { LOGGER.info("Processed requestId={},table={}," - + "segments(queried/processed/matched/consuming/invalid/limit/value)={}/{}/{}/{}/{}/{}/{}," + + "segments(queried/processed/matched/consumingQueried/consumingProcessed/consumingMatched/" + + "invalid/limit/value)={}/{}/{}/{}/{}/{}/{}/{}/{}," + "schedulerWaitMs={},reqDeserMs={},totalExecMs={},resSerMs={},totalTimeMs={},minConsumingFreshnessMs={}," + "broker={},numDocsScanned={},scanInFilter={},scanPostFilter={},sched={}," + "threadCpuTimeNs(total/thread/sysActivity/resSer)={}/{}/{}/{}", requestId, tableNameWithType, numSegmentsQueried, numSegmentsProcessed, numSegmentsMatched, numSegmentsConsuming, + numConsumingSegmentsProcessed, numConsumingSegmentsMatched, numSegmentsPrunedInvalid, numSegmentsPrunedByLimit, numSegmentsPrunedByValue, schedulerWaitMs, timerContext.getPhaseDurationMs(ServerQueryPhase.REQUEST_DESERIALIZATION), timerContext.getPhaseDurationMs(ServerQueryPhase.QUERY_PROCESSING), diff --git a/pinot-core/src/test/java/org/apache/pinot/core/operator/combine/SelectionCombineOperatorTest.java b/pinot-core/src/test/java/org/apache/pinot/core/operator/combine/SelectionCombineOperatorTest.java index b3510228bb..d088fbbf78 100644 --- a/pinot-core/src/test/java/org/apache/pinot/core/operator/combine/SelectionCombineOperatorTest.java +++ b/pinot-core/src/test/java/org/apache/pinot/core/operator/combine/SelectionCombineOperatorTest.java @@ -21,11 +21,13 @@ package org.apache.pinot.core.operator.combine; import java.io.File; import java.io.IOException; import java.util.ArrayList; +import java.util.Collections; import java.util.List; import java.util.PriorityQueue; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import org.apache.commons.io.FileUtils; +import org.apache.pinot.common.metadata.segment.SegmentZKMetadata; import org.apache.pinot.common.utils.DataSchema; import org.apache.pinot.core.operator.blocks.IntermediateResultsBlock; import org.apache.pinot.core.plan.CombinePlanNode; @@ -35,9 +37,14 @@ import org.apache.pinot.core.plan.maker.PlanMaker; import org.apache.pinot.core.query.request.context.QueryContext; import org.apache.pinot.core.query.request.context.utils.QueryContextConverterUtils; import org.apache.pinot.segment.local.indexsegment.immutable.ImmutableSegmentLoader; +import org.apache.pinot.segment.local.indexsegment.mutable.MutableSegmentImpl; +import org.apache.pinot.segment.local.io.writer.impl.DirectMemoryManager; +import org.apache.pinot.segment.local.realtime.impl.RealtimeSegmentConfig; +import org.apache.pinot.segment.local.realtime.impl.RealtimeSegmentStatsHistory; import org.apache.pinot.segment.local.segment.creator.impl.SegmentIndexCreationDriverImpl; import org.apache.pinot.segment.local.segment.readers.GenericRowRecordReader; import org.apache.pinot.segment.spi.IndexSegment; +import org.apache.pinot.segment.spi.MutableSegment; import org.apache.pinot.segment.spi.creator.SegmentGeneratorConfig; import org.apache.pinot.spi.config.table.TableConfig; import org.apache.pinot.spi.config.table.TableType; @@ -51,6 +58,9 @@ import org.testng.annotations.AfterClass; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; import static org.testng.Assert.assertEquals; import static org.testng.Assert.assertNotNull; import static org.testng.Assert.assertTrue; @@ -66,6 +76,8 @@ public class SelectionCombineOperatorTest { // Create (MAX_NUM_THREADS_PER_QUERY * 2) segments so that each thread needs to process 2 segments private static final int NUM_SEGMENTS = CombineOperatorUtils.MAX_NUM_THREADS_PER_QUERY * 2; + private static final int NUM_CONSUMING_SEGMENTS = NUM_SEGMENTS / 2; + private static final String REALTIME_TABLE_NAME = RAW_TABLE_NAME + "_REALTIME"; private static final int NUM_RECORDS_PER_SEGMENT = 100; private static final String INT_COLUMN = "intColumn"; @@ -84,12 +96,40 @@ public class SelectionCombineOperatorTest { throws Exception { FileUtils.deleteDirectory(TEMP_DIR); _indexSegments = new ArrayList<>(NUM_SEGMENTS); - for (int i = 0; i < NUM_SEGMENTS; i++) { - _indexSegments.add(createSegment(i)); + for (int i = 0; i < NUM_SEGMENTS / 2; i++) { + _indexSegments.add(createOfflineSegment(i)); } + + for (int i = NUM_CONSUMING_SEGMENTS; i < NUM_SEGMENTS; i++) { + _indexSegments.add(createRealtimeSegment(i)); + } + } + + private IndexSegment createRealtimeSegment(int index) throws Exception { + RealtimeSegmentStatsHistory statsHistory = mock(RealtimeSegmentStatsHistory.class); + when(statsHistory.getEstimatedCardinality(anyString())).thenReturn(200); + when(statsHistory.getEstimatedAvgColSize(anyString())).thenReturn(32); + + String segmentName = SEGMENT_NAME_PREFIX + index; + + RealtimeSegmentConfig realtimeSegmentConfig = new RealtimeSegmentConfig.Builder() + .setTableNameWithType(REALTIME_TABLE_NAME).setSegmentName(segmentName).setSchema(SCHEMA).setCapacity(100000) + .setAvgNumMultiValues(2).setNoDictionaryColumns(Collections.emptySet()) + .setJsonIndexColumns(Collections.emptySet()).setVarLengthDictionaryColumns(Collections.emptySet()) + .setInvertedIndexColumns(Collections.emptySet()).setSegmentZKMetadata(new SegmentZKMetadata(segmentName)) + .setMemoryManager(new DirectMemoryManager(segmentName)).setStatsHistory(statsHistory).setAggregateMetrics(false) + .setNullHandlingEnabled(true).setIngestionAggregationConfigs(Collections.emptyList()).build(); + MutableSegment mutableSegmentImpl = new MutableSegmentImpl(realtimeSegmentConfig, null); + int baseValue = index * NUM_RECORDS_PER_SEGMENT / 2; + for (int i = 0; i < NUM_RECORDS_PER_SEGMENT; i++) { + GenericRow record = new GenericRow(); + record.putValue(INT_COLUMN, baseValue + i); + mutableSegmentImpl.index(record, null); + } + return mutableSegmentImpl; } - private IndexSegment createSegment(int index) + private IndexSegment createOfflineSegment(int index) throws Exception { int baseValue = index * NUM_RECORDS_PER_SEGMENT / 2; List<GenericRow> records = new ArrayList<>(NUM_RECORDS_PER_SEGMENT); @@ -124,6 +164,8 @@ public class SelectionCombineOperatorTest { assertEquals(combineResult.getNumEntriesScannedPostFilter(), 0); assertEquals(combineResult.getNumSegmentsProcessed(), NUM_SEGMENTS); assertEquals(combineResult.getNumSegmentsMatched(), 0); + assertEquals(combineResult.getNumConsumingSegmentsProcessed(), 0); + assertEquals(combineResult.getNumConsumingSegmentsMatched(), 0); assertEquals(combineResult.getNumTotalDocs(), NUM_SEGMENTS * NUM_RECORDS_PER_SEGMENT); } @@ -141,6 +183,8 @@ public class SelectionCombineOperatorTest { assertEquals(combineResult.getNumEntriesScannedInFilter(), 0); assertEquals(combineResult.getNumEntriesScannedPostFilter(), numDocsScanned); assertEquals(combineResult.getNumSegmentsProcessed(), NUM_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsProcessed(), NUM_CONSUMING_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsMatched(), 0); int numSegmentsMatched = combineResult.getNumSegmentsMatched(); assertTrue(numSegmentsMatched >= 1 && numSegmentsMatched <= CombineOperatorUtils.MAX_NUM_THREADS_PER_QUERY); assertEquals(combineResult.getNumTotalDocs(), NUM_SEGMENTS * NUM_RECORDS_PER_SEGMENT); @@ -157,6 +201,8 @@ public class SelectionCombineOperatorTest { assertEquals(combineResult.getNumEntriesScannedPostFilter(), numDocsScanned); assertEquals(combineResult.getNumSegmentsProcessed(), NUM_SEGMENTS); assertEquals(combineResult.getNumSegmentsMatched(), NUM_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsProcessed(), NUM_CONSUMING_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsMatched(), NUM_CONSUMING_SEGMENTS); assertEquals(combineResult.getNumTotalDocs(), NUM_SEGMENTS * NUM_RECORDS_PER_SEGMENT); } @@ -180,6 +226,8 @@ public class SelectionCombineOperatorTest { assertEquals(combineResult.getNumEntriesScannedInFilter(), 0); assertEquals(combineResult.getNumEntriesScannedPostFilter(), numDocsScanned); assertEquals(combineResult.getNumSegmentsProcessed(), NUM_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsProcessed(), NUM_CONSUMING_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsMatched(), 0); int numSegmentsMatched = combineResult.getNumSegmentsMatched(); assertTrue(numSegmentsMatched >= 1 && numSegmentsMatched <= CombineOperatorUtils.MAX_NUM_THREADS_PER_QUERY); assertEquals(combineResult.getNumTotalDocs(), NUM_SEGMENTS * NUM_RECORDS_PER_SEGMENT); @@ -202,6 +250,8 @@ public class SelectionCombineOperatorTest { assertEquals(combineResult.getNumEntriesScannedInFilter(), 0); assertEquals(combineResult.getNumEntriesScannedPostFilter(), numDocsScanned); assertEquals(combineResult.getNumSegmentsProcessed(), NUM_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsProcessed(), NUM_CONSUMING_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsMatched(), NUM_CONSUMING_SEGMENTS); numSegmentsMatched = combineResult.getNumSegmentsMatched(); assertTrue(numSegmentsMatched >= 1 && numSegmentsMatched <= CombineOperatorUtils.MAX_NUM_THREADS_PER_QUERY); assertEquals(combineResult.getNumTotalDocs(), NUM_SEGMENTS * NUM_RECORDS_PER_SEGMENT); @@ -219,6 +269,8 @@ public class SelectionCombineOperatorTest { assertEquals(combineResult.getNumEntriesScannedPostFilter(), numDocsScanned); assertEquals(combineResult.getNumSegmentsProcessed(), NUM_SEGMENTS); assertEquals(combineResult.getNumSegmentsMatched(), NUM_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsProcessed(), NUM_CONSUMING_SEGMENTS); + assertEquals(combineResult.getNumConsumingSegmentsMatched(), NUM_CONSUMING_SEGMENTS); assertEquals(combineResult.getNumTotalDocs(), NUM_SEGMENTS * NUM_RECORDS_PER_SEGMENT); } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org