Skip to content

Commit

Permalink
Fix SqlDialect's defaultReturn return type to be SqlBlock (#1357)
Browse files Browse the repository at this point in the history
  • Loading branch information
alancai98 authored Feb 1, 2024
1 parent 3e28dd5 commit bc24c2f
Show file tree
Hide file tree
Showing 2 changed files with 55 additions and 54 deletions.
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,14 +34,15 @@ Thank you to all who have contributed!
### Deprecated

### Fixed
- Return type of `partiql-ast`'s `SqlDialect` for `defaultReturn` to be a `SqlBlock` rather than `Nothing`

### Removed

### Security

### Contributors
Thank you to all who have contributed!
- @<your-username>
- @alancai98

## [0.14.2] - 2024-01-25

Expand Down
106 changes: 53 additions & 53 deletions partiql-ast/src/main/kotlin/org/partiql/ast/sql/SqlDialect.kt
Original file line number Diff line number Diff line change
Expand Up @@ -40,12 +40,12 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
public val PARTIQL = object : SqlDialect() {}
}

override fun defaultReturn(node: AstNode, head: SqlBlock) =
override fun defaultReturn(node: AstNode, head: SqlBlock): SqlBlock =
throw UnsupportedOperationException("Cannot print $node")

// STATEMENTS

override fun visitStatementQuery(node: Statement.Query, head: SqlBlock) = visitExpr(node.expr, head)
override fun visitStatementQuery(node: Statement.Query, head: SqlBlock): SqlBlock = visitExpr(node.expr, head)

// IDENTIFIERS & PATHS

Expand All @@ -55,7 +55,7 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
* @param node
* @param head
*/
public open fun visitExprWrapped(node: Expr, head: SqlBlock) = when (node) {
public open fun visitExprWrapped(node: Expr, head: SqlBlock): SqlBlock = when (node) {
is Expr.SFW -> {
var h = head
h = h concat "("
Expand All @@ -66,7 +66,7 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
else -> visitExpr(node, head)
}

override fun visitIdentifierSymbol(node: Identifier.Symbol, head: SqlBlock) = head concat r(node.sql())
override fun visitIdentifierSymbol(node: Identifier.Symbol, head: SqlBlock): SqlBlock = head concat r(node.sql())

override fun visitIdentifierQualified(node: Identifier.Qualified, head: SqlBlock): SqlBlock {
val path = node.steps.fold(node.root.sql()) { p, step -> p + "." + step.sql() }
Expand Down Expand Up @@ -116,93 +116,93 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
}

// cannot write path step outside the context of a path as we don't want it to reflow
override fun visitPathStep(node: Path.Step, head: SqlBlock) = error("path step cannot be written directly")
override fun visitPathStep(node: Path.Step, head: SqlBlock): SqlBlock = error("path step cannot be written directly")

override fun visitPathStepSymbol(node: Path.Step.Symbol, head: SqlBlock) = visitPathStep(node, head)
override fun visitPathStepSymbol(node: Path.Step.Symbol, head: SqlBlock): SqlBlock = visitPathStep(node, head)

override fun visitPathStepIndex(node: Path.Step.Index, head: SqlBlock) = visitPathStep(node, head)
override fun visitPathStepIndex(node: Path.Step.Index, head: SqlBlock): SqlBlock = visitPathStep(node, head)

// TYPES

override fun visitTypeNullType(node: Type.NullType, head: SqlBlock) = head concat r("NULL")
override fun visitTypeNullType(node: Type.NullType, head: SqlBlock): SqlBlock = head concat r("NULL")

override fun visitTypeMissing(node: Type.Missing, head: SqlBlock) = head concat r("MISSING")
override fun visitTypeMissing(node: Type.Missing, head: SqlBlock): SqlBlock = head concat r("MISSING")

override fun visitTypeBool(node: Type.Bool, head: SqlBlock) = head concat r("BOOL")
override fun visitTypeBool(node: Type.Bool, head: SqlBlock): SqlBlock = head concat r("BOOL")

override fun visitTypeTinyint(node: Type.Tinyint, head: SqlBlock) = head concat r("TINYINT")
override fun visitTypeTinyint(node: Type.Tinyint, head: SqlBlock): SqlBlock = head concat r("TINYINT")

override fun visitTypeSmallint(node: Type.Smallint, head: SqlBlock) = head concat r("SMALLINT")
override fun visitTypeSmallint(node: Type.Smallint, head: SqlBlock): SqlBlock = head concat r("SMALLINT")

override fun visitTypeInt2(node: Type.Int2, head: SqlBlock) = head concat r("INT2")
override fun visitTypeInt2(node: Type.Int2, head: SqlBlock): SqlBlock = head concat r("INT2")

override fun visitTypeInt4(node: Type.Int4, head: SqlBlock) = head concat r("INT4")
override fun visitTypeInt4(node: Type.Int4, head: SqlBlock): SqlBlock = head concat r("INT4")

override fun visitTypeBigint(node: Type.Bigint, head: SqlBlock) = head concat r("BIGINT")
override fun visitTypeBigint(node: Type.Bigint, head: SqlBlock): SqlBlock = head concat r("BIGINT")

override fun visitTypeInt8(node: Type.Int8, head: SqlBlock) = head concat r("INT8")
override fun visitTypeInt8(node: Type.Int8, head: SqlBlock): SqlBlock = head concat r("INT8")

override fun visitTypeInt(node: Type.Int, head: SqlBlock) = head concat r("INT")
override fun visitTypeInt(node: Type.Int, head: SqlBlock): SqlBlock = head concat r("INT")

override fun visitTypeReal(node: Type.Real, head: SqlBlock) = head concat r("REAL")
override fun visitTypeReal(node: Type.Real, head: SqlBlock): SqlBlock = head concat r("REAL")

override fun visitTypeFloat32(node: Type.Float32, head: SqlBlock) = head concat r("FLOAT32")
override fun visitTypeFloat32(node: Type.Float32, head: SqlBlock): SqlBlock = head concat r("FLOAT32")

override fun visitTypeFloat64(node: Type.Float64, head: SqlBlock) = head concat r("DOUBLE PRECISION")
override fun visitTypeFloat64(node: Type.Float64, head: SqlBlock): SqlBlock = head concat r("DOUBLE PRECISION")

override fun visitTypeDecimal(node: Type.Decimal, head: SqlBlock) =
override fun visitTypeDecimal(node: Type.Decimal, head: SqlBlock): SqlBlock =
head concat type("DECIMAL", node.precision, node.scale)

override fun visitTypeNumeric(node: Type.Numeric, head: SqlBlock) =
override fun visitTypeNumeric(node: Type.Numeric, head: SqlBlock): SqlBlock =
head concat type("NUMERIC", node.precision, node.scale)

override fun visitTypeChar(node: Type.Char, head: SqlBlock) = head concat type("CHAR", node.length)
override fun visitTypeChar(node: Type.Char, head: SqlBlock): SqlBlock = head concat type("CHAR", node.length)

override fun visitTypeVarchar(node: Type.Varchar, head: SqlBlock) = head concat type("VARCHAR", node.length)
override fun visitTypeVarchar(node: Type.Varchar, head: SqlBlock): SqlBlock = head concat type("VARCHAR", node.length)

override fun visitTypeString(node: Type.String, head: SqlBlock) = head concat r("STRING")
override fun visitTypeString(node: Type.String, head: SqlBlock): SqlBlock = head concat r("STRING")

override fun visitTypeSymbol(node: Type.Symbol, head: SqlBlock) = head concat r("SYMBOL")
override fun visitTypeSymbol(node: Type.Symbol, head: SqlBlock): SqlBlock = head concat r("SYMBOL")

override fun visitTypeBit(node: Type.Bit, head: SqlBlock) = head concat type("BIT", node.length)
override fun visitTypeBit(node: Type.Bit, head: SqlBlock): SqlBlock = head concat type("BIT", node.length)

override fun visitTypeBitVarying(node: Type.BitVarying, head: SqlBlock) = head concat type("BINARY", node.length)
override fun visitTypeBitVarying(node: Type.BitVarying, head: SqlBlock): SqlBlock = head concat type("BINARY", node.length)

override fun visitTypeByteString(node: Type.ByteString, head: SqlBlock) = head concat type("BYTE", node.length)
override fun visitTypeByteString(node: Type.ByteString, head: SqlBlock): SqlBlock = head concat type("BYTE", node.length)

override fun visitTypeBlob(node: Type.Blob, head: SqlBlock) = head concat type("BLOB", node.length)
override fun visitTypeBlob(node: Type.Blob, head: SqlBlock): SqlBlock = head concat type("BLOB", node.length)

override fun visitTypeClob(node: Type.Clob, head: SqlBlock) = head concat type("CLOB", node.length)
override fun visitTypeClob(node: Type.Clob, head: SqlBlock): SqlBlock = head concat type("CLOB", node.length)

override fun visitTypeBag(node: Type.Bag, head: SqlBlock) = head concat r("BAG")
override fun visitTypeBag(node: Type.Bag, head: SqlBlock): SqlBlock = head concat r("BAG")

override fun visitTypeList(node: Type.List, head: SqlBlock) = head concat r("LIST")
override fun visitTypeList(node: Type.List, head: SqlBlock): SqlBlock = head concat r("LIST")

override fun visitTypeSexp(node: Type.Sexp, head: SqlBlock) = head concat r("SEXP")
override fun visitTypeSexp(node: Type.Sexp, head: SqlBlock): SqlBlock = head concat r("SEXP")

override fun visitTypeTuple(node: Type.Tuple, head: SqlBlock) = head concat r("TUPLE")
override fun visitTypeTuple(node: Type.Tuple, head: SqlBlock): SqlBlock = head concat r("TUPLE")

override fun visitTypeStruct(node: Type.Struct, head: SqlBlock) = head concat r("STRUCT")
override fun visitTypeStruct(node: Type.Struct, head: SqlBlock): SqlBlock = head concat r("STRUCT")

override fun visitTypeAny(node: Type.Any, head: SqlBlock) = head concat r("ANY")
override fun visitTypeAny(node: Type.Any, head: SqlBlock): SqlBlock = head concat r("ANY")

override fun visitTypeDate(node: Type.Date, head: SqlBlock) = head concat r("DATE")
override fun visitTypeDate(node: Type.Date, head: SqlBlock): SqlBlock = head concat r("DATE")

override fun visitTypeTime(node: Type.Time, head: SqlBlock): SqlBlock = head concat type("TIME", node.precision)

override fun visitTypeTimeWithTz(node: Type.TimeWithTz, head: SqlBlock) =
override fun visitTypeTimeWithTz(node: Type.TimeWithTz, head: SqlBlock): SqlBlock =
head concat type("TIME WITH TIMEZONE", node.precision, gap = true)

override fun visitTypeTimestamp(node: Type.Timestamp, head: SqlBlock) =
override fun visitTypeTimestamp(node: Type.Timestamp, head: SqlBlock): SqlBlock =
head concat type("TIMESTAMP", node.precision)

override fun visitTypeTimestampWithTz(node: Type.TimestampWithTz, head: SqlBlock) =
override fun visitTypeTimestampWithTz(node: Type.TimestampWithTz, head: SqlBlock): SqlBlock =
head concat type("TIMESTAMP WITH TIMEZONE", node.precision, gap = true)

override fun visitTypeInterval(node: Type.Interval, head: SqlBlock) = head concat type("INTERVAL", node.precision)
override fun visitTypeInterval(node: Type.Interval, head: SqlBlock): SqlBlock = head concat type("INTERVAL", node.precision)

// unsupported
override fun visitTypeCustom(node: Type.Custom, head: SqlBlock) = defaultReturn(node, head)
override fun visitTypeCustom(node: Type.Custom, head: SqlBlock): SqlBlock = defaultReturn(node, head)

// Expressions

Expand Down Expand Up @@ -274,7 +274,7 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
return h
}

override fun visitExprSessionAttribute(node: Expr.SessionAttribute, head: SqlBlock) =
override fun visitExprSessionAttribute(node: Expr.SessionAttribute, head: SqlBlock): SqlBlock =
head concat r(node.attribute.name)

override fun visitExprPath(node: Expr.Path, head: SqlBlock): SqlBlock {
Expand All @@ -283,7 +283,7 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
return h
}

override fun visitExprPathStepSymbol(node: Expr.Path.Step.Symbol, head: SqlBlock) =
override fun visitExprPathStepSymbol(node: Expr.Path.Step.Symbol, head: SqlBlock): SqlBlock =
head concat r(".${node.symbol.sql()}")

override fun visitExprPathStepIndex(node: Expr.Path.Step.Index, head: SqlBlock): SqlBlock {
Expand All @@ -296,9 +296,9 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
return h
}

override fun visitExprPathStepWildcard(node: Expr.Path.Step.Wildcard, head: SqlBlock) = head concat r("[*]")
override fun visitExprPathStepWildcard(node: Expr.Path.Step.Wildcard, head: SqlBlock): SqlBlock = head concat r("[*]")

override fun visitExprPathStepUnpivot(node: Expr.Path.Step.Unpivot, head: SqlBlock) = head concat r(".*")
override fun visitExprPathStepUnpivot(node: Expr.Path.Step.Unpivot, head: SqlBlock): SqlBlock = head concat r(".*")

override fun visitExprCall(node: Expr.Call, head: SqlBlock): SqlBlock {
var h = head
Expand All @@ -320,11 +320,11 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
return h
}

override fun visitExprParameter(node: Expr.Parameter, head: SqlBlock) = head concat r("?")
override fun visitExprParameter(node: Expr.Parameter, head: SqlBlock): SqlBlock = head concat r("?")

override fun visitExprValues(node: Expr.Values, head: SqlBlock) = head concat list("VALUES (") { node.rows }
override fun visitExprValues(node: Expr.Values, head: SqlBlock): SqlBlock = head concat list("VALUES (") { node.rows }

override fun visitExprValuesRow(node: Expr.Values.Row, head: SqlBlock) = head concat list { node.items }
override fun visitExprValuesRow(node: Expr.Values.Row, head: SqlBlock): SqlBlock = head concat list { node.items }

override fun visitExprCollection(node: Expr.Collection, head: SqlBlock): SqlBlock {
val (start, end) = when (node.type) {
Expand All @@ -337,7 +337,7 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {
return head concat list(start, end) { node.values }
}

override fun visitExprStruct(node: Expr.Struct, head: SqlBlock) = head concat list("{", "}") { node.fields }
override fun visitExprStruct(node: Expr.Struct, head: SqlBlock): SqlBlock = head concat list("{", "}") { node.fields }

override fun visitExprStructField(node: Expr.Struct.Field, head: SqlBlock): SqlBlock {
var h = head
Expand Down Expand Up @@ -698,7 +698,7 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {

// LET

override fun visitLet(node: Let, head: SqlBlock) = head concat list("LET ", "") { node.bindings }
override fun visitLet(node: Let, head: SqlBlock): SqlBlock = head concat list("LET ", "") { node.bindings }

override fun visitLetBinding(node: Let.Binding, head: SqlBlock): SqlBlock {
var h = head
Expand Down Expand Up @@ -750,7 +750,7 @@ public abstract class SqlDialect : AstBaseVisitor<SqlBlock, SqlBlock>() {

// ORDER BY

override fun visitOrderBy(node: OrderBy, head: SqlBlock) = head concat list("ORDER BY ", "") { node.sorts }
override fun visitOrderBy(node: OrderBy, head: SqlBlock): SqlBlock = head concat list("ORDER BY ", "") { node.sorts }

override fun visitSort(node: Sort, head: SqlBlock): SqlBlock {
var h = head
Expand Down

1 comment on commit bc24c2f

@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: bc24c2f Previous: 3e28dd5 Ratio
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncGroupingWithInterruptible 252.15062640865682 us/op 253.66048593326394 us/op 0.99
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncGroupingWithoutInterruptible 263.5794165851774 us/op 252.7994675875389 us/op 1.04
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncWithInterruptible 238.9133652306205 us/op 230.8144451157951 us/op 1.04
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinAggFuncWithoutInterruptible 231.7946189008541 us/op 235.32097282607683 us/op 0.99
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinWithInterruptible 180.6250295528124 us/op 176.2719017168995 us/op 1.02
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.compileCrossJoinWithoutInterruptible 185.36471128601372 us/op 184.04716462751995 us/op 1.01
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggGroupWithInterruptible 12930630.823149998 us/op 13094649.783750001 us/op 0.99
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggGroupWithoutInterruptible 12920516.634 us/op 12888698.396599997 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggWithInterruptible 4812285.199749999 us/op 5181862.26015 us/op 0.93
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinAggWithoutInterruptible 5048455.752350001 us/op 5211824.51855 us/op 0.97
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinWithInterruptible 39.590129830865415 us/op 38.8237793864485 us/op 1.02
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.evalCrossJoinWithoutInterruptible 38.829906133895925 us/op 39.80950315793625 us/op 0.98
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggGroupWithInterruptible 13136818.687899997 us/op 12919920.815700002 us/op 1.02
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggGroupWithoutInterruptible 12964364.41015 us/op 12984468.9057 us/op 1.00
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggWithInterruptible 5262585.3764 us/op 5053530.7129 us/op 1.04
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinAggWithoutInterruptible 5221138.736849999 us/op 5022874.5492 us/op 1.04
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinWithInterruptible 93510.51633712123 us/op 100799.82101409088 us/op 0.93
org.partiql.jmh.benchmarks.CompilerInterruptionBenchmark.iterCrossJoinWithoutInterruptible 99925.29320954543 us/op 92772.44013409091 us/op 1.08
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLCompiler15 82.6799604952463 us/op 78.44443355263108 us/op 1.05
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLCompiler30 153.6982898341759 us/op 178.61241167560928 us/op 0.86
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator15 375041.5287833333 us/op 374869.13926666667 us/op 1.00
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator30 737471.8821500001 us/op 733644.6468250001 us/op 1.01
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLEvaluator30WithData10 7342757.450300001 us/op 7350233.72985 us/op 1.00
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLParser15 133.85828688625836 us/op 131.33669796743834 us/op 1.02
org.partiql.jmh.benchmarks.MultipleLikeBenchmark.testPartiQLParser30 248.5301599417324 us/op 260.0635185892024 us/op 0.96
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameCaseWhenThen 32.80133267213485 us/op 33.57562851445353 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery 42.25978921683744 us/op 42.35011679920337 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery01 242.7272461144803 us/op 235.33454670237393 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameComplexQuery02 417.54505619432285 us/op 413.12114040898314 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameExceptUnionIntersectSixty 158.60731073734485 us/op 156.6639675574138 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameExec20Expressions 45.95516421236657 us/op 46.58672650182912 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameFromLet 33.91368618772912 us/op 32.56119465863672 us/op 1.04
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGraphPattern 32.12484528956496 us/op 31.80263691762419 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGraphPreFilters 57.06341258669558 us/op 56.9276160047913 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameGroupLimit 38.543409795518215 us/op 38.24558920219819 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameLongFromSourceOrderBy 47.81468239944887 us/op 47.8099598591445 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameManyJoins 48.1775657515891 us/op 48.058962978575025 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameNestedAggregates 87.29151994030106 us/op 86.27191669877502 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameNestedParen 13.502268768702336 us/op 13.194106990520766 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNamePivot 51.718303738978236 us/op 49.962346893888636 us/op 1.04
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuery15OrsAndLikes 163.21005553523148 us/op 160.82177786704898 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuery30Plus 83.5290257146799 us/op 83.45809019093541 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryFunc 38.2234988479265 us/op 37.962708372470026 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryFuncInProjection 42.05463768922113 us/op 42.47383531954334 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryList 59.36988662592002 us/op 59.210008795361645 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQueryNestedSelect 588.8878728609698 us/op 577.1693923600997 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameQuerySimple 12.089934912314451 us/op 11.979613401468466 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralJoins 16.388368193944054 us/op 16.283804883262214 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralProjections 55.90938557949296 us/op 54.81857905959508 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSeveralSelect 160.73598134882215 us/op 158.68841565847472 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSimpleInsert 23.175659002437268 us/op 22.697213075802743 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeJoins 16.855516169976188 us/op 16.532199640455687 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeProjections 22.92441048197108 us/op 22.494028054031553 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameSomeSelect 41.054777223505745 us/op 40.4790894135525 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameTimeZone 18.81080553813093 us/op 19.04608222520468 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameVeryLongQuery 190.35577989950485 us/op 195.0335065789287 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseFailNameVeryLongQuery01 758.6036303974339 us/op 765.0542792159365 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameCaseWhenThen 17.81245188067674 us/op 18.87248305049372 us/op 0.94
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameComplexQuery 202.16595823082645 us/op 182.47625466012275 us/op 1.11
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameComplexQuery01 86.34364085939558 us/op 84.77951623208675 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameExceptUnionIntersectSixty 164.45020112488186 us/op 165.68121578370364 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameExec20Expressions 47.68842911102534 us/op 45.797308199778115 us/op 1.04
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameFromLet 27.32186860025707 us/op 28.244332319220952 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGraphPattern 29.597892270246792 us/op 29.573550761218108 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGraphPreFilters 54.06420212829512 us/op 54.43773333868289 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameGroupLimit 25.432997540075863 us/op 25.87247581570138 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameLongFromSourceOrderBy 99.91540160802265 us/op 99.19500311146543 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameManyJoins 33.78399719180762 us/op 34.95040405281695 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameNestedAggregates 73.76370536325207 us/op 72.3364666440742 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameNestedParen 61.814761900189396 us/op 61.77656469704967 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNamePivot 50.76205932133813 us/op 48.94600473060935 us/op 1.04
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuery15OrsAndLikes 132.26854074286584 us/op 131.49977950391363 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuery30Plus 44.74846046756556 us/op 45.46110758879323 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryFunc 99.47679569004018 us/op 99.47547117726124 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryFuncInProjection 63.35509450176046 us/op 64.64073390317631 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryList 54.97537388898635 us/op 56.51225803727526 us/op 0.97
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQueryNestedSelect 106.34407813191487 us/op 103.13801411936117 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameQuerySimple 8.6097387141166 us/op 8.781719254467877 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralJoins 55.81805126467831 us/op 55.2521815132317 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralProjections 40.94328689271384 us/op 40.34410191093258 us/op 1.01
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSeveralSelect 76.64588291526402 us/op 76.97043574616308 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSimpleInsert 15.0929423999337 us/op 15.280304627406721 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeJoins 14.951406870097614 us/op 14.57642345949164 us/op 1.03
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeProjections 12.931115119739763 us/op 13.135631687858474 us/op 0.98
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameSomeSelect 24.10965179416141 us/op 23.58281205879081 us/op 1.02
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameTimeZone 5.85510691758518 us/op 5.921113394054002 us/op 0.99
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameVeryLongQuery 301.0909591303804 us/op 301.87014686670034 us/op 1.00
org.partiql.jmh.benchmarks.ParserBenchmark.parseNameVeryLongQuery01 839.7540366489702 us/op 836.4811228485048 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLCompiler 7.018349996898839 us/op 6.992934978475144 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLEvaluator 1.9671648735009781 us/op 1.781758710888837 us/op 1.10
org.partiql.jmh.benchmarks.PartiQLBenchmark.testPartiQLParser 7.9735038342620355 us/op 7.702543056158277 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameCaseWhenThen 31.834964079684347 us/op 32.166164938100664 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery 42.25354397389004 us/op 39.58422531993155 us/op 1.07
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery01 235.6248793201541 us/op 239.4777998205189 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameComplexQuery02 409.70321031843486 us/op 402.1728871751466 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameExceptUnionIntersectSixty 156.50366656060936 us/op 157.77821266450164 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameExec20Expressions 44.83654183303251 us/op 44.32855739350631 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameFromLet 32.658590348128136 us/op 32.062477205261786 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGraphPattern 30.815096194553725 us/op 30.34211559025966 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGraphPreFilters 55.708328101619564 us/op 56.347109647971465 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameGroupLimit 39.87129482573061 us/op 39.042972140146574 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameLongFromSourceOrderBy 46.83779963532625 us/op 46.775498154465005 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameManyJoins 48.49686997997979 us/op 47.03108089248632 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameNestedAggregates 82.57198334783523 us/op 81.54681424330406 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameNestedParen 12.962232181540127 us/op 12.730596760823792 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNamePivot 52.01466385697112 us/op 50.22221735939495 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuery15OrsAndLikes 159.2803084677829 us/op 154.89797440995898 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuery30Plus 85.68879775467215 us/op 84.21335149843802 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryFunc 37.61577966881478 us/op 38.02108239856603 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryFuncInProjection 41.958505439046014 us/op 42.02564474026557 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryList 57.23433263590421 us/op 57.32853978260569 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQueryNestedSelect 590.7441529649623 us/op 578.6950901709057 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameQuerySimple 11.604759554302476 us/op 11.478289076149485 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralJoins 15.989396499908477 us/op 15.909591502727618 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralProjections 54.07502572702754 us/op 53.46949989295176 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSeveralSelect 156.6516448836323 us/op 154.60575666087203 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSimpleInsert 22.24325786920723 us/op 21.878140411325088 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeJoins 15.830493253891046 us/op 15.978725669825192 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeProjections 21.992975225622466 us/op 21.244902111557618 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameSomeSelect 40.203461433410006 us/op 40.96283642058509 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameTimeZone 18.4906244811448 us/op 18.420582304525162 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameVeryLongQuery 190.5400712998527 us/op 193.21550442990048 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseFailNameVeryLongQuery01 753.3056327891462 us/op 786.7103923788079 us/op 0.96
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameCaseWhenThen 24.254695791430986 us/op 24.179210421285923 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameComplexQuery 244.28192406604586 us/op 243.7848247123166 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameComplexQuery01 123.93307076973285 us/op 123.08399628547508 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameExceptUnionIntersectSixty 262.6945908023349 us/op 260.09989221336247 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameExec20Expressions 62.87327261812827 us/op 63.36326603676895 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameFromLet 39.16852694027795 us/op 41.09120133265227 us/op 0.95
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGraphPattern 44.98241933657285 us/op 45.30855552707432 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGraphPreFilters 81.97195586742892 us/op 82.53426908408376 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameGroupLimit 30.091353963572477 us/op 29.142767592444535 us/op 1.03
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameLongFromSourceOrderBy 117.22100719843452 us/op 121.0163300201992 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameManyJoins 41.580851326500834 us/op 42.88599050034666 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameNestedAggregates 97.65425040078603 us/op 102.1145216239245 us/op 0.96
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameNestedParen 66.11625762193012 us/op 67.44169976234949 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNamePivot 62.032611346817724 us/op 62.865426140983985 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuery15OrsAndLikes 194.692743841622 us/op 190.81974526413757 us/op 1.02
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuery30Plus 59.747650231501474 us/op 57.65847863764176 us/op 1.04
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryFunc 115.80219121124951 us/op 114.54880953279482 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryFuncInProjection 77.9021447581209 us/op 80.01498042770639 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryList 69.59698765512701 us/op 69.38134842827967 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQueryNestedSelect 140.27859980619758 us/op 142.1842346902833 us/op 0.99
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameQuerySimple 12.128431093392923 us/op 12.076443341388108 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralJoins 78.71321068766893 us/op 78.67473295485479 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralProjections 63.11680136990536 us/op 62.62103878665931 us/op 1.01
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSeveralSelect 111.39008637065754 us/op 115.08014323428297 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSimpleInsert 21.77744273679741 us/op 22.414659531389553 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeJoins 20.062451927474633 us/op 20.64286002091579 us/op 0.97
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeProjections 17.74384655186654 us/op 18.130938562008115 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameSomeSelect 34.880374267620205 us/op 35.6790042997357 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameTimeZone 7.4663008886626985 us/op 7.499425839649426 us/op 1.00
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameVeryLongQuery 458.6198855600963 us/op 467.8439730009718 us/op 0.98
org.partiql.jmh.benchmarks.PartiQLParserBenchmark.parseNameVeryLongQuery01 1179.4422912798434 us/op 1216.184889687402 us/op 0.97

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

Please sign in to comment.