Skip to content

Commit

Permalink
Merge pull request #1288 from partiql/path-navi-with-function
Browse files Browse the repository at this point in the history
fix typer path navigation
  • Loading branch information
yliuuuu authored Dec 8, 2023
2 parents f8f6b2a + a07b6aa commit 6ba5a12
Show file tree
Hide file tree
Showing 4 changed files with 58 additions and 19 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -49,15 +49,15 @@ internal object PlanTransform : PlanBaseVisitor<PlanNode, ProblemCallback>() {
override fun visitFnResolved(node: Fn.Resolved, ctx: ProblemCallback) = org.partiql.plan.fn(node.signature)

override fun visitFnUnresolved(node: Fn.Unresolved, ctx: ProblemCallback): org.partiql.plan.Rex.Op {
return org.partiql.plan.Rex.Op.Err("Unresolved function")
error("Unresolved function ${node.identifier}")
}

override fun visitAgg(node: Agg, ctx: ProblemCallback) = super.visitAgg(node, ctx) as org.partiql.plan.Agg

override fun visitAggResolved(node: Agg.Resolved, ctx: ProblemCallback) = org.partiql.plan.Agg(node.signature)

override fun visitAggUnresolved(node: Agg.Unresolved, ctx: ProblemCallback): org.partiql.plan.Rex.Op {
return org.partiql.plan.Rex.Op.Err("Unresolved aggregation")
error("Unresolved aggregation ${node.identifier}")
}

override fun visitStatement(node: Statement, ctx: ProblemCallback) =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -503,6 +503,17 @@ internal class PlanTyper(
return rex(type, rexOpPath(root, newSteps))
}

// Default returns the original node, in some case we need the resolved node.
// i.e., the path step is a call node
override fun visitRexOpPathStep(node: Rex.Op.Path.Step, ctx: StaticType?): Rex.Op.Path.Step =
when (node) {
is Rex.Op.Path.Step.Index -> Rex.Op.Path.Step.Index(visitRex(node.key, ctx))
is Rex.Op.Path.Step.Key -> Rex.Op.Path.Step.Key(visitRex(node.key, ctx))
is Rex.Op.Path.Step.Symbol -> Rex.Op.Path.Step.Symbol(node.identifier)
is Rex.Op.Path.Step.Unpivot -> Rex.Op.Path.Step.Unpivot()
is Rex.Op.Path.Step.Wildcard -> Rex.Op.Path.Step.Wildcard()
}

/**
* Resolve and type scalar function calls.
*
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
package org.partiql.planner.internal.typer.path

import org.junit.jupiter.api.DynamicContainer
import org.junit.jupiter.api.TestFactory
import org.partiql.planner.internal.typer.PartiQLTyperTestBase
import org.partiql.types.StaticType
import java.util.stream.Stream

/**
* This test makes sure that the planner can resolve various path expression
*/
class SanityTests : PartiQLTyperTestBase() {
@TestFactory
fun path(): Stream<DynamicContainer> {
val tests = buildList {
(0..14).forEach {
this.add("paths-${it.toString().padStart(2,'0')}")
}
}.map { inputs.get("basics", it)!! }

val argsMap: Map<TestResult, Set<List<StaticType>>> = buildMap {
put(TestResult.Success(StaticType.ANY), setOf(listOf(StaticType.ANY, StaticType.ANY)))
put(TestResult.Failure, emptySet<List<StaticType>>())
}

return super.testGen("path", tests, argsMap)
}
}
34 changes: 17 additions & 17 deletions partiql-planner/src/testFixtures/resources/inputs/basics/paths.sql
Original file line number Diff line number Diff line change
Expand Up @@ -4,67 +4,67 @@

--#[paths-00]
-- tuple navigation
x.y;
t1.y;

--#[paths-01]
-- array navigation with literal
x[0];
t1[0];

--#[paths-02]
-- tuple navigation with array notation
x['y'];
t1['y'];

--#[paths-03]
-- tuple navigation (2)
x."y";
t1."y";

--#[paths-04]
-- tuple navigation with explicit cast as string
x[CAST(z AS STRING)];
t1[CAST(t2 AS STRING)];

-- ----------------------------------------
-- Composition of Navigation (5 choose 3)
-- ----------------------------------------

--#[paths-05]
x.y[0]['y'];
t1.y[0]['y'];

--#[paths-06]
x.y[0]."y";
t1.y[0]."y";

--#[paths-07]
x.y[0][CAST(z AS STRING)];
t1.y[0][CAST(t2 AS STRING)];

--#[paths-08]
x.y['y']."y";
t1.y['y']."y";

--#[paths-09]
x.y['y'][CAST(z AS STRING)];
t1.y['y'][CAST(t2 AS STRING)];

--#[paths-10]
x.y."y"[CAST(z AS STRING)];
t1.y."y"[CAST(t2 AS STRING)];

--#[paths-11]
x[0]['y']."y";
t1[0]['y']."y";

--#[paths-12]
x[0]['y'][CAST(z AS STRING)];
t1[0]['y'][CAST(t2 AS STRING)];

--#[paths-13]
x[0]."y"[CAST(z AS STRING)];
t1[0]."y"[CAST(t2 AS STRING)];

--#[paths-14]
x['y']."y"[CAST(z AS STRING)];
t1['y']."y"[CAST(t2 AS STRING)];

-- ----------------------------------------
-- Array Navigation with Expressions
-- ----------------------------------------

--#[paths-15]
x[0+1];
t1[0+1];

--#[paths-16]
x[ABS(1)];
t1[ABS(1)];

-- ----------------------------------------
-- PartiQL Path Navigation (+SFW)
Expand Down

1 comment on commit 6ba5a12

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

JMH Benchmark

Benchmark suite Current: 6ba5a12 Previous: f8f6b2a Ratio
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncGroupingWithInterruptible 268.750285180253 us/op 260.8836272511262 us/op 1.03
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncGroupingWithoutInterruptible 261.1275023610221 us/op 253.8855469853679 us/op 1.03
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncWithInterruptible 239.53042199259212 us/op 243.12984844079114 us/op 0.99
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncWithoutInterruptible 241.78625768745232 us/op 242.01825318819866 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinWithInterruptible 183.1006626259132 us/op 177.78906675523143 us/op 1.03
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinWithoutInterruptible 183.79740781704038 us/op 183.69848735945732 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggGroupWithInterruptible 13132057.325600002 us/op 13050114.363199998 us/op 1.01
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggGroupWithoutInterruptible 13060024.3592 us/op 12496221.2123 us/op 1.05
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggWithInterruptible 4954771.81385 us/op 4888717.8592 us/op 1.01
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggWithoutInterruptible 4989691.472050001 us/op 5333598.1567 us/op 0.94
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinWithInterruptible 39.34844741259713 us/op 38.34958246323777 us/op 1.03
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinWithoutInterruptible 38.310492720681246 us/op 39.16170935370671 us/op 0.98
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggGroupWithInterruptible 12969851.787300002 us/op 12883514.1949 us/op 1.01
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggGroupWithoutInterruptible 12984440.579350002 us/op 12978081.5033 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggWithInterruptible 5028911.64385 us/op 5158209.32045 us/op 0.97
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggWithoutInterruptible 4900440.041650001 us/op 5105075.0178000005 us/op 0.96
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinWithInterruptible 93065.72849204545 us/op 93892.48718636362 us/op 0.99
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinWithoutInterruptible 98947.44587954546 us/op 94464.13063636364 us/op 1.05
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLCompiler15 79.4288371267963 us/op 80.63689049296413 us/op 0.99
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLCompiler30 155.5522635692479 us/op 156.88990666194906 us/op 0.99
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator15 372842.7314 us/op 377787.55726666667 us/op 0.99
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator30 730485.092175 us/op 734243.6163250001 us/op 0.99
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator30WithData10 7322796.312100001 us/op 7375322.368299998 us/op 0.99
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLParser15 134.06046613705922 us/op 132.73289381244143 us/op 1.01
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLParser30 250.91238141898643 us/op 249.8757383430903 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameCaseWhenThen 34.10816462506318 us/op 33.16861128968701 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery 39.81603763698135 us/op 39.7239480543945 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery01 227.4738202328624 us/op 220.59404469131422 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery02 382.20786117443464 us/op 378.55600961312143 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameExceptUnionIntersectSixty 156.44294307218956 us/op 159.03156013776282 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameExec20Expressions 47.06986824843811 us/op 47.72697724233866 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameFromLet 33.92420236743142 us/op 34.402361783623086 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGraphPattern 32.40979582231787 us/op 32.031803596781735 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGraphPreFilters 58.2674919423592 us/op 57.871841018603064 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGroupLimit 39.64385113807476 us/op 39.36440761657659 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameLongFromSourceOrderBy 47.93940815862102 us/op 47.77115537944259 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameManyJoins 50.105170984638754 us/op 50.11249689628726 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameNestedAggregates 86.03199490915547 us/op 85.19505465764648 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameNestedParen 13.6170796427245 us/op 13.461896216373464 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNamePivot 52.14768436924287 us/op 51.863769650314055 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuery15OrsAndLikes 158.61607199041444 us/op 157.71258256228603 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuery30Plus 85.37688004497848 us/op 86.28574222403643 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryFunc 38.478417914602645 us/op 38.259612343556185 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryFuncInProjection 43.25608679424066 us/op 42.774883453212894 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryList 60.57167350209691 us/op 60.04062105681097 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryNestedSelect 550.8429674309842 us/op 561.5135256579428 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuerySimple 12.441996593511604 us/op 12.086898180591836 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralJoins 17.223406758678408 us/op 16.65811520129052 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralProjections 55.32968884010719 us/op 56.37656472433364 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralSelect 161.36420707430267 us/op 156.59082587785696 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSimpleInsert 22.965469812334412 us/op 22.71465393387369 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeJoins 17.125273895937347 us/op 16.774899986754242 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeProjections 22.754241328149625 us/op 22.723145968991904 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeSelect 40.6403426313421 us/op 40.83579992652591 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameTimeZone 19.44240883161838 us/op 18.96556271903695 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameVeryLongQuery 198.22607913361702 us/op 193.6973883862049 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameVeryLongQuery01 754.2417260640527 us/op 749.0410432881565 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameCaseWhenThen 18.034138175088962 us/op 18.255783936136993 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameComplexQuery 189.58920655880044 us/op 194.95157409894924 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameComplexQuery01 84.08879822359924 us/op 84.2354486719111 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameExceptUnionIntersectSixty 169.57719873920215 us/op 164.82268117041818 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameExec20Expressions 45.95275059900932 us/op 46.39065261933445 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameFromLet 28.33196348724038 us/op 27.736398202814843 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGraphPattern 30.78829873778783 us/op 30.95953465154537 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGraphPreFilters 55.82444570493465 us/op 54.30407193696476 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGroupLimit 25.56235610835011 us/op 24.8604717247268 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameLongFromSourceOrderBy 97.75934822778726 us/op 100.05978336797736 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameManyJoins 34.17651457122157 us/op 33.155405897827606 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameNestedAggregates 73.65051062141103 us/op 72.16155289154615 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameNestedParen 59.66708851642733 us/op 62.356523392569024 us/op 0.96
org.partiql.jmh.benchmarks.ParserBenchmark.parseNamePivot 48.88210581388684 us/op 48.77716283099323 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuery15OrsAndLikes 134.0077148144407 us/op 127.27552225570273 us/op 1.05
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuery30Plus 46.75786943591275 us/op 47.61924962995914 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryFunc 99.41873048275073 us/op 96.5591753016192 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryFuncInProjection 63.85292626294294 us/op 64.39325248962334 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryList 57.14544057884585 us/op 56.24422973439066 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryNestedSelect 104.11564516066792 us/op 104.30479538175261 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuerySimple 8.585845923611695 us/op 8.799006304771854 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralJoins 53.96264257558861 us/op 54.31685854823299 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralProjections 40.16612333162867 us/op 40.16731378465617 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralSelect 76.68807442418888 us/op 74.04962369871919 us/op 1.04
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSimpleInsert 15.234410817477112 us/op 15.14586837874116 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeJoins 15.112536682626011 us/op 14.449935257449571 us/op 1.05
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeProjections 13.287167939031855 us/op 13.380323192404797 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeSelect 24.82107997050237 us/op 24.421439598038695 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameTimeZone 6.034665138056904 us/op 6.075859512018363 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameVeryLongQuery 305.0516826866207 us/op 299.90640057275715 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameVeryLongQuery01 808.5621860658973 us/op 807.6108152323108 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLCompiler 7.053710664129854 us/op 6.9734685184399865 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLEvaluator 1.8389057982262476 us/op 1.9454630866265308 us/op 0.95
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLParser 7.847979970131995 us/op 7.866611100753725 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameCaseWhenThen 32.67006944951755 us/op 31.775537938371183 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery 41.68346183332139 us/op 40.14747637279547 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery01 221.3020356990347 us/op 220.74281793354794 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery02 384.289152630911 us/op 371.3517172224027 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameExceptUnionIntersectSixty 156.1916192807351 us/op 156.5186354152445 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameExec20Expressions 43.96957326963094 us/op 44.915185979804356 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameFromLet 33.39503810269821 us/op 32.77794685245167 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGraphPattern 31.241321104289703 us/op 31.398469974724527 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGraphPreFilters 56.17810862856386 us/op 55.675147298721754 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGroupLimit 39.17678785389984 us/op 39.71688466746994 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameLongFromSourceOrderBy 47.99013597865745 us/op 47.47914237880596 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameManyJoins 50.459724770722694 us/op 47.76224320740843 us/op 1.06
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameNestedAggregates 84.16050197743652 us/op 85.50165714494221 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameNestedParen 13.357723936594818 us/op 13.059123756157144 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNamePivot 51.15835990444372 us/op 51.97368533449662 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuery15OrsAndLikes 157.02899701778193 us/op 159.0410737265157 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuery30Plus 87.03280119316076 us/op 85.7001085097863 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryFunc 38.130461894740975 us/op 37.203455707663636 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryFuncInProjection 43.15189802413792 us/op 42.032913148423795 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryList 58.29279162217747 us/op 57.77546880264322 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryNestedSelect 547.5996441209802 us/op 547.5756139458612 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuerySimple 11.827534263114668 us/op 11.681454846425945 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralJoins 16.476808064825235 us/op 16.134589881492754 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralProjections 54.55792987663807 us/op 53.519030500152226 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralSelect 154.48436349799331 us/op 153.71242262402149 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSimpleInsert 22.55055617728937 us/op 22.048239943848536 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeJoins 16.179223555460997 us/op 16.206848636724185 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeProjections 21.92617673642524 us/op 21.79575587535728 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeSelect 40.653066654024585 us/op 40.6514297054994 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameTimeZone 18.736018530232965 us/op 18.617390858699334 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameVeryLongQuery 188.3616039248611 us/op 204.08356793123386 us/op 0.92
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameVeryLongQuery01 752.5613201801468 us/op 755.4137092296596 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameCaseWhenThen 23.575029950381754 us/op 23.247316749145874 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameComplexQuery 240.84274462389158 us/op 249.00811730924957 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameComplexQuery01 121.60413294568934 us/op 120.06417366958571 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameExceptUnionIntersectSixty 264.8688858723919 us/op 262.7843986227456 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameExec20Expressions 61.89717659300088 us/op 64.76197962077657 us/op 0.96
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameFromLet 38.170061825004595 us/op 39.465274837351124 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGraphPattern 44.57735722504988 us/op 47.766472691520285 us/op 0.93
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGraphPreFilters 79.3919051730854 us/op 81.02813971601589 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGroupLimit 28.813896764480063 us/op 28.19877664204437 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameLongFromSourceOrderBy 119.70759057684981 us/op 117.01984979100905 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameManyJoins 42.471797698196795 us/op 42.98576496972591 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameNestedAggregates 99.31581915580442 us/op 96.37601928448126 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameNestedParen 66.84935343281815 us/op 66.90946612881466 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNamePivot 63.19457881379783 us/op 62.61860437184497 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuery15OrsAndLikes 188.4238697615337 us/op 190.94775354976164 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuery30Plus 57.981823809040165 us/op 58.8959108424887 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryFunc 114.6381703494222 us/op 114.27808670723411 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryFuncInProjection 80.07462676665608 us/op 77.97377450747342 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryList 70.29355701458346 us/op 68.72631594696962 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryNestedSelect 138.33685640714737 us/op 141.48920289313705 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuerySimple 11.969541731490256 us/op 11.465332131806242 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralJoins 80.52947019198245 us/op 80.77354669106072 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralProjections 64.03919988340469 us/op 64.33482896591507 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralSelect 114.37925711570946 us/op 112.53584893465919 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSimpleInsert 22.10381063287759 us/op 22.13167923934662 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeJoins 20.097332780405768 us/op 19.843762160140194 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeProjections 17.91868179747377 us/op 17.95105365015018 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeSelect 36.37851355491482 us/op 35.11200168213823 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameTimeZone 7.416595742350923 us/op 7.282619521922081 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameVeryLongQuery 449.46123440187347 us/op 455.2571040933529 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameVeryLongQuery01 1163.6415113999396 us/op 1123.824410740856 us/op 1.04

This comment was automatically generated by workflow using github-action-benchmark.

Please sign in to comment.