Skip to content

Commit

Permalink
Merge pull request #1321 from partiql/simplify_is
Browse files Browse the repository at this point in the history
  • Loading branch information
RCHowell authored Jan 2, 2024
2 parents c73efbf + caca049 commit 7fe57b5
Show file tree
Hide file tree
Showing 3 changed files with 137 additions and 49 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -403,68 +403,61 @@ internal object PartiQLHeader : Header() {
// To model type assertion, generating a list of assertion function based on the type,
// and the parameter will be the value entered.
// i.e., 1 is INT2 => is_int16(1)
private fun isType(): List<FunctionSignature.Scalar> = types.all.filterNot { it == NULL || it == MISSING }.flatMap { element ->
types.all.filterNot { it == MISSING || it == ANY }.map { operand ->
private fun isType(): List<FunctionSignature.Scalar> =
types.all.filterNot { it == NULL || it == MISSING }.map { element ->
FunctionSignature.Scalar(
name = "is_${element.name.lowercase()}",
returns = BOOL,
parameters = listOf(
FunctionParameter("value", operand)
FunctionParameter("value", ANY)
),
isNullCall = false, // TODO: Should this be true?
isNullable = false
isNullable = false,
isNullCall = false,
)
}
}

// In type assertion, it is possible for types to have args
// i.e., 'a' is CHAR(2)
// we put type parameter before value.
private fun isTypeSingleArg(): List<FunctionSignature.Scalar> = listOf(CHAR, STRING).flatMap { element ->
types.all.filterNot { it == MISSING }.map { operand ->
FunctionSignature.Scalar(
name = "is_${element.name.lowercase()}",
returns = BOOL,
parameters = listOf(
FunctionParameter("type_parameter_1", INT32),
FunctionParameter("value", operand)
),
isNullable = false, // TODO: Should this be true?
isNullCall = false
)
}
private fun isTypeSingleArg(): List<FunctionSignature.Scalar> = listOf(CHAR, STRING).map { element ->
FunctionSignature.Scalar(
name = "is_${element.name.lowercase()}",
returns = BOOL,
parameters = listOf(
FunctionParameter("type_parameter_1", INT32),
FunctionParameter("value", ANY)
),
isNullable = false,
isNullCall = false
)
}

private fun isTypeDoubleArgsInt(): List<FunctionSignature.Scalar> = listOf(DECIMAL).flatMap { element ->
types.all.filterNot { it == MISSING }.map { operand ->
FunctionSignature.Scalar(
name = "is_${element.name.lowercase()}",
returns = BOOL,
parameters = listOf(
FunctionParameter("type_parameter_1", INT32),
FunctionParameter("type_parameter_2", INT32),
FunctionParameter("value", operand)
),
isNullable = false,
isNullCall = false
)
}
private fun isTypeDoubleArgsInt(): List<FunctionSignature.Scalar> = listOf(DECIMAL).map { element ->
FunctionSignature.Scalar(
name = "is_${element.name.lowercase()}",
returns = BOOL,
parameters = listOf(
FunctionParameter("type_parameter_1", INT32),
FunctionParameter("type_parameter_2", INT32),
FunctionParameter("value", ANY)
),
isNullable = false,
isNullCall = false
)
}

private fun isTypeTime(): List<FunctionSignature.Scalar> = listOf(TIME, TIMESTAMP).flatMap { element ->
types.all.filterNot { it == MISSING }.map { operand ->
FunctionSignature.Scalar(
name = "is_${element.name.lowercase()}",
returns = BOOL,
parameters = listOf(
FunctionParameter("type_parameter_1", BOOL),
FunctionParameter("type_parameter_2", INT32),
FunctionParameter("value", operand) // TODO: Decide if we need to further segment this
),
isNullCall = false,
isNullable = false
)
}
private fun isTypeTime(): List<FunctionSignature.Scalar> = listOf(TIME, TIMESTAMP).map { element ->
FunctionSignature.Scalar(
name = "is_${element.name.lowercase()}",
returns = BOOL,
parameters = listOf(
FunctionParameter("type_parameter_1", BOOL),
FunctionParameter("type_parameter_2", INT32),
FunctionParameter("value", ANY) // TODO: Decide if we need to further segment this
),
isNullable = false,
isNullCall = false
)
}

// SUBSTRING (expression, start[, length]?)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -388,6 +388,66 @@ class PlanTyperTestsPorted {
),
)

@JvmStatic
fun isTypeCases() = listOf(
SuccessTestCase(
name = "IS BOOL",
key = key("is-type-00"),
catalog = "pql",
catalogPath = listOf("main"),
expected = StaticType.BOOL
),
SuccessTestCase(
name = "IS INT",
key = key("is-type-01"),
catalog = "pql",
catalogPath = listOf("main"),
expected = StaticType.BOOL
),
SuccessTestCase(
name = "IS STRING",
key = key("is-type-02"),
catalog = "pql",
catalogPath = listOf("main"),
expected = StaticType.BOOL
),
SuccessTestCase(
name = "IS NULL",
key = key("is-type-03"),
catalog = "pql",
expected = StaticType.BOOL,
),
SuccessTestCase(
name = "MISSING IS NULL",
key = key("is-type-04"),
catalog = "pql",
expected = StaticType.BOOL,
),
SuccessTestCase(
name = "NULL IS NULL",
key = key("is-type-05"),
catalog = "pql",
expected = StaticType.BOOL,
),
SuccessTestCase(
name = "MISSING IS MISSING",
key = key("is-type-06"),
catalog = "pql",
expected = StaticType.BOOL,
),
SuccessTestCase(
name = "NULL IS MISSING",
key = key("is-type-07"),
catalog = "pql",
expected = StaticType.BOOL,
),
ErrorTestCase(
name = "ERROR always MISSING",
key = key("is-type-08"),
catalog = "pql",
),
)

@JvmStatic
fun sessionVariables() = listOf(
SuccessTestCase(
Expand Down Expand Up @@ -536,7 +596,10 @@ class PlanTyperTestsPorted {
problemHandler = assertProblemExists {
Problem(
UNKNOWN_PROBLEM_LOCATION,
PlanningProblemDetails.UnknownFunction("bitwise_and", listOf(StaticType.INT4, StaticType.STRING))
PlanningProblemDetails.UnknownFunction(
"bitwise_and",
listOf(StaticType.INT4, StaticType.STRING)
)
)
}
),
Expand Down Expand Up @@ -2972,6 +3035,11 @@ class PlanTyperTestsPorted {
@Execution(ExecutionMode.CONCURRENT)
fun testPivot(tc: TestCase) = runTest(tc)

@ParameterizedTest
@MethodSource("isTypeCases")
@Execution(ExecutionMode.CONCURRENT)
fun testIsType(tc: TestCase) = runTest(tc)

// --------- Finish Parameterized Tests ------

//
Expand All @@ -2980,7 +3048,7 @@ class PlanTyperTestsPorted {
private fun infer(
query: String,
session: PartiQLPlanner.Session,
problemCollector: ProblemCollector
problemCollector: ProblemCollector,
): PartiQLPlan {
val ast = parser.parse(query).root
return planner.plan(ast, session, problemCollector).plan
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
--#[is-type-00]
false IS BOOL;

--#[is-type-01]
item.i_class_id IS INT;

--#[is-type-02]
item.i_brand IS STRING;

--#[is-type-03]
1 IS NULL;

--#[is-type-04]
MISSING IS NULL;

--#[is-type-05]
NULL IS NULL;

--#[is-type-06]
MISSING IS MISSING;

--#[is-type-07]
NULL IS MISSING;

--#[is-type-08]
-- ERROR! always MISSING
MISSING IS BOOL;

1 comment on commit 7fe57b5

@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: 7fe57b5 Previous: c73efbf Ratio
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncGroupingWithInterruptible 252.21461552527427 us/op 251.35766365675727 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncGroupingWithoutInterruptible 258.0678160484249 us/op 252.60988160293414 us/op 1.02
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncWithInterruptible 233.00483620487321 us/op 248.85351150198144 us/op 0.94
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncWithoutInterruptible 246.55843040351266 us/op 224.28853616016903 us/op 1.10
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinWithInterruptible 188.9231221136401 us/op 175.61257370659345 us/op 1.08
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinWithoutInterruptible 183.90194149735453 us/op 184.8097091268734 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggGroupWithInterruptible 13319142.806699999 us/op 13077349.0921 us/op 1.02
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggGroupWithoutInterruptible 12887412.5811 us/op 12693120.619900003 us/op 1.02
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggWithInterruptible 5164656.93435 us/op 5090246.0621 us/op 1.01
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggWithoutInterruptible 4692318.73255 us/op 5133174.72655 us/op 0.91
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinWithInterruptible 39.5240039878047 us/op 38.117609526129634 us/op 1.04
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinWithoutInterruptible 38.205371896389806 us/op 43.77351370723007 us/op 0.87
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggGroupWithInterruptible 13024492.335299999 us/op 13042526.169349998 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggGroupWithoutInterruptible 12873457.264000002 us/op 12898240.488699999 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggWithInterruptible 4865393.1411 us/op 5130584.059599999 us/op 0.95
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggWithoutInterruptible 5157047.225400001 us/op 5099894.42775 us/op 1.01
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinWithInterruptible 91495.85619886364 us/op 96965.14976045454 us/op 0.94
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinWithoutInterruptible 99787.88079090908 us/op 107102.358235 us/op 0.93
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLCompiler15 80.570499127982 us/op 81.82204286912852 us/op 0.98
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLCompiler30 155.61186919330754 us/op 154.66398991473199 us/op 1.01
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator15 370279.3846 us/op 373202.4321333333 us/op 0.99
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator30 732309.0129750001 us/op 722275.6025000002 us/op 1.01
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator30WithData10 7195430.8851000015 us/op 7290406.708699999 us/op 0.99
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLParser15 133.00135797996376 us/op 133.17884120020258 us/op 1.00
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLParser30 243.66619195725934 us/op 249.48447679527067 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameCaseWhenThen 32.67436847237083 us/op 33.96185588633656 us/op 0.96
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery 41.63224120737566 us/op 42.69894585421511 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery01 220.93736862504542 us/op 222.7647550872235 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery02 375.54074228129053 us/op 375.7432155597392 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameExceptUnionIntersectSixty 156.66572116563654 us/op 157.0416578522095 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameExec20Expressions 46.68224747300404 us/op 45.952536875544865 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameFromLet 34.109529708696385 us/op 34.21512162073139 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGraphPattern 32.677687503323234 us/op 32.278534292304 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGraphPreFilters 57.89818698841899 us/op 57.44349477538994 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGroupLimit 40.14243302620797 us/op 40.1521760627482 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameLongFromSourceOrderBy 48.18799753747855 us/op 47.892527196920376 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameManyJoins 49.37376832196264 us/op 49.76321784863101 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameNestedAggregates 85.10017177431148 us/op 84.66040991957904 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameNestedParen 13.681390422595754 us/op 13.50079083371524 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNamePivot 51.613656560514315 us/op 51.39237312228583 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuery15OrsAndLikes 153.43678971289128 us/op 154.85015287090766 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuery30Plus 86.87193566656393 us/op 85.22976630278589 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryFunc 38.159086507534234 us/op 38.40289664215728 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryFuncInProjection 43.19576369861058 us/op 43.10201835928669 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryList 59.35120876924164 us/op 61.33150933994489 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryNestedSelect 556.7648503499652 us/op 551.718800458005 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuerySimple 12.24799710431274 us/op 12.19616097872154 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralJoins 17.10119396629831 us/op 16.64917230784995 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralProjections 56.637437510498025 us/op 56.40559382535944 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralSelect 160.28517203937744 us/op 155.80742156363888 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSimpleInsert 23.523637338251174 us/op 23.698369779394973 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeJoins 16.964301323468536 us/op 16.649389882512907 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeProjections 23.398452933227407 us/op 22.907992745095832 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeSelect 40.519013965781895 us/op 40.99692402361964 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameTimeZone 19.177380632667408 us/op 19.533751591567214 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameVeryLongQuery 186.125307277169 us/op 194.47098542623314 us/op 0.96
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameVeryLongQuery01 745.5302553988541 us/op 752.809100780246 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameCaseWhenThen 18.544825288832882 us/op 18.34258106724161 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameComplexQuery 187.89837183606144 us/op 185.54401894681806 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameComplexQuery01 80.78454669189318 us/op 83.88682641236565 us/op 0.96
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameExceptUnionIntersectSixty 165.69028509524867 us/op 162.54410549499173 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameExec20Expressions 46.879941340397856 us/op 47.23091084568609 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameFromLet 27.569678723234993 us/op 27.12609101164619 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGraphPattern 30.507260053445435 us/op 30.397104498823516 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGraphPreFilters 54.53110673999605 us/op 52.97664098699024 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGroupLimit 25.00554985257537 us/op 24.551065512169593 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameLongFromSourceOrderBy 96.07840666413051 us/op 96.62735565924157 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameManyJoins 32.99423787185137 us/op 33.887011221529065 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameNestedAggregates 71.42944272102626 us/op 72.93948284986288 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameNestedParen 59.97176168463433 us/op 61.03588869543743 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNamePivot 48.12918648162956 us/op 49.26909042033914 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuery15OrsAndLikes 130.13523118883083 us/op 131.27650326119246 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuery30Plus 49.88992514639669 us/op 47.036642318476545 us/op 1.06
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryFunc 98.35138796244772 us/op 99.67745786256191 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryFuncInProjection 65.59481336475007 us/op 64.0877674495253 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryList 55.16997473816947 us/op 57.22690051345943 us/op 0.96
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryNestedSelect 105.6141421268004 us/op 108.64762415363207 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuerySimple 8.526257846704304 us/op 8.538363479448552 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralJoins 54.663616628430034 us/op 56.11188381746685 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralProjections 40.52710649633568 us/op 40.0016471278012 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralSelect 75.00173936685408 us/op 79.30733549595493 us/op 0.95
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSimpleInsert 15.045482699416723 us/op 15.057386087869968 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeJoins 15.024206394080204 us/op 14.887807378575015 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeProjections 12.995208702663609 us/op 13.05811769232256 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeSelect 24.329880569586216 us/op 25.1605058236105 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameTimeZone 6.062008719880061 us/op 5.944009357484765 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameVeryLongQuery 296.6859777419246 us/op 304.77865105533067 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameVeryLongQuery01 839.223025000552 us/op 819.1914733266692 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLCompiler 6.854041286530814 us/op 6.866993267228215 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLEvaluator 1.7584864667798183 us/op 2.158063506973371 us/op 0.81
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLParser 7.412711097783242 us/op 7.730080799019129 us/op 0.96
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameCaseWhenThen 32.10698098053025 us/op 32.62004642911592 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery 42.40931430890664 us/op 39.68264661946106 us/op 1.07
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery01 218.020355396379 us/op 222.34467938086328 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery02 381.28707354866344 us/op 381.2917997038789 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameExceptUnionIntersectSixty 156.08128086521452 us/op 154.64311137509816 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameExec20Expressions 44.54659721790274 us/op 45.21874039421479 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameFromLet 32.791279529112565 us/op 32.99536633439689 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGraphPattern 31.33218141158872 us/op 31.056349192104612 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGraphPreFilters 54.93048094652668 us/op 56.60350286117409 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGroupLimit 40.0325304524352 us/op 38.84959277499256 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameLongFromSourceOrderBy 46.68919830339091 us/op 47.207940914671326 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameManyJoins 48.476114279760196 us/op 49.06041160855622 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameNestedAggregates 85.76854031837587 us/op 84.26125168494505 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameNestedParen 13.279924443586818 us/op 13.23776614039978 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNamePivot 51.21143363149763 us/op 50.53284992710972 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuery15OrsAndLikes 152.74282347881558 us/op 153.1073337941386 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuery30Plus 86.39680964025494 us/op 87.72748620930837 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryFunc 37.81446427298134 us/op 38.86051171595459 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryFuncInProjection 42.72692916994553 us/op 42.401592108741525 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryList 58.04459060117625 us/op 58.87383645427659 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryNestedSelect 551.8528986020896 us/op 547.2170252885671 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuerySimple 11.939499481082326 us/op 11.908986734594517 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralJoins 16.348700261956296 us/op 16.228010468702244 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralProjections 53.13287037627081 us/op 53.626240002828595 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralSelect 155.7520989853515 us/op 154.37496665261057 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSimpleInsert 22.116512949067292 us/op 22.050103253477978 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeJoins 16.48564385097503 us/op 16.104119944947705 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeProjections 22.104522285608333 us/op 21.71438002593212 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeSelect 40.567703310850575 us/op 38.686000430512834 us/op 1.05
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameTimeZone 18.575960175694853 us/op 18.761338009751196 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameVeryLongQuery 192.59153170600877 us/op 191.18251720914085 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameVeryLongQuery01 748.3596324651751 us/op 744.155671606872 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameCaseWhenThen 24.122346969671664 us/op 24.52160594523934 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameComplexQuery 248.43373952469355 us/op 245.27113358851292 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameComplexQuery01 120.72205791773608 us/op 119.4315040632089 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameExceptUnionIntersectSixty 272.3421177950544 us/op 261.55400865425895 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameExec20Expressions 64.09753771568053 us/op 66.26058718500235 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameFromLet 39.02574880426615 us/op 38.73876448921307 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGraphPattern 46.29429069241162 us/op 44.091287146490416 us/op 1.05
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGraphPreFilters 78.02027992122241 us/op 80.11029706607552 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGroupLimit 28.170459759592738 us/op 28.20499880501584 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameLongFromSourceOrderBy 118.04443653266068 us/op 120.87943890315645 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameManyJoins 42.44125120396311 us/op 42.71492342408597 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameNestedAggregates 103.03091152687693 us/op 102.24593336257632 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameNestedParen 68.69582800051293 us/op 65.81934950869325 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNamePivot 64.44558554828589 us/op 62.9434300360811 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuery15OrsAndLikes 191.4450790222154 us/op 192.7414513126701 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuery30Plus 58.73429952742233 us/op 58.1741981027737 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryFunc 112.85966680127733 us/op 114.47325078838753 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryFuncInProjection 78.46263754668288 us/op 78.48259748641757 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryList 69.13353935592563 us/op 70.5493440306262 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryNestedSelect 137.95445064728045 us/op 135.38299832205675 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuerySimple 12.285317767459606 us/op 12.017237739030339 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralJoins 81.29711062865991 us/op 80.77663484359348 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralProjections 63.4238781826808 us/op 60.808470590094124 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralSelect 115.78611158710426 us/op 114.70345744845731 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSimpleInsert 22.020443482461708 us/op 22.322398498823638 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeJoins 19.896635110901002 us/op 20.272672410976682 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeProjections 18.207205596754893 us/op 18.660847192507227 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeSelect 35.961455395181304 us/op 36.078193290735804 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameTimeZone 7.464643625925987 us/op 7.325104497762318 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameVeryLongQuery 469.4650928383256 us/op 466.1714078432964 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameVeryLongQuery01 1151.221097411924 us/op 1138.052256946435 us/op 1.01

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

Please sign in to comment.