diff --git a/.github/workflows/glama-sync.yml b/.github/workflows/glama-sync.yml
index 83f153a4..3ff55018 100644
--- a/.github/workflows/glama-sync.yml
+++ b/.github/workflows/glama-sync.yml
@@ -1,6 +1,6 @@
name: Glama MCP Server Sync
-# Runs on every GitHub release to:
+# Runs on every GitHub release (and on manual dispatch with a tag) to:
# 1. Keep glama.json version in sync with the release tag
# 2. Trigger a fresh Glama Docker build pinned to the exact release commit
#
@@ -16,9 +16,17 @@ name: Glama MCP Server Sync
# The cookie expires periodically. When builds start failing with "auth failed",
# repeat the steps above to refresh the secret.
+# GoReleaser publishes releases with GITHUB_TOKEN, and events created with
+# GITHUB_TOKEN do not start other workflows, so release.yml dispatches this
+# workflow explicitly after GoReleaser (workflow_dispatch is the exception).
on:
release:
types: [published]
+ workflow_dispatch:
+ inputs:
+ tag:
+ description: 'Release tag to sync (e.g. v1.16.0)'
+ required: true
permissions:
contents: read
@@ -35,25 +43,30 @@ jobs:
steps:
- uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0
with:
- ref: ${{ github.event.release.target_commitish }}
+ ref: ${{ github.event.release.target_commitish || 'main' }}
token: ${{ secrets.GITHUB_TOKEN }}
- name: Bump version in glama.json
+ env:
+ RELEASE_TAG: ${{ inputs.tag || github.ref_name }}
run: |
- VERSION="${GITHUB_REF_NAME#v}"
+ VERSION="${RELEASE_TAG#v}"
echo "Updating glama.json → $VERSION"
jq --arg v "$VERSION" '.version = $v' glama.json > /tmp/glama.json
mv /tmp/glama.json glama.json
- name: Commit and push
+ env:
+ RELEASE_TAG: ${{ inputs.tag || github.ref_name }}
run: |
+ VERSION="${RELEASE_TAG#v}"
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add glama.json
if git diff --staged --quiet; then
- echo "glama.json already at ${GITHUB_REF_NAME#v} — no commit needed"
+ echo "glama.json already at ${VERSION} — no commit needed"
else
- git commit -m "chore(glama): sync version to ${GITHUB_REF_NAME#v} [skip ci]"
+ git commit -m "chore(glama): sync version to ${VERSION} [skip ci]"
git push
fi
@@ -65,9 +78,12 @@ jobs:
- name: Trigger build
env:
GLAMA_SESSION_COOKIE: ${{ secrets.GLAMA_SESSION_COOKIE }}
- COMMIT_SHA: ${{ github.sha }}
- RELEASE_TAG: ${{ github.ref_name }}
+ RELEASE_TAG: ${{ inputs.tag || github.ref_name }}
+ GH_TOKEN: ${{ github.token }}
run: |
+ # Pin the build to the tagged commit (github.sha is main's head on dispatch).
+ COMMIT_SHA="$(gh api "repos/${GITHUB_REPOSITORY}/commits/${RELEASE_TAG}" --jq .sha)"
+ export COMMIT_SHA
if [ -z "$GLAMA_SESSION_COOKIE" ]; then
echo "::warning::GLAMA_SESSION_COOKIE not set — skipping Glama build trigger."
echo ""
@@ -93,7 +109,7 @@ jobs:
# Build steps run inside Glama's debian:bookworm-slim container.
# Update the Go version below when go.mod bumps the minimum Go requirement.
build_steps = json.dumps([
- "curl -fsSL -o /tmp/go.tar.gz https://go.dev/dl/go1.26.1.linux-amd64.tar.gz",
+ "curl -fsSL -o /tmp/go.tar.gz https://go.dev/dl/go1.26.10.linux-amd64.tar.gz",
"tar -C /usr/local -xzf /tmp/go.tar.gz",
"PATH=/usr/local/go/bin:$PATH /usr/local/go/bin/go build -ldflags='-s -w' -o /app/gosqlx-mcp ./cmd/gosqlx-mcp",
])
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index ecab6745..894ace24 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -14,6 +14,7 @@ jobs:
runs-on: ubuntu-latest
permissions:
contents: write # GoReleaser creates the GitHub release and uploads assets
+ actions: write # dispatch glama-sync.yml (release events from GITHUB_TOKEN start no workflows)
steps:
- uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4.4.0
@@ -83,7 +84,16 @@ jobs:
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
+
+ # The release GoReleaser just published does not trigger glama-sync.yml's
+ # `release: published` (it was created with GITHUB_TOKEN); dispatch it.
+ - name: Dispatch Glama sync
+ continue-on-error: true
+ env:
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ TAG: ${{ github.ref_name }}
+ run: gh workflow run glama-sync.yml --repo "$GITHUB_REPOSITORY" --ref main -f tag="$TAG"
+
- name: Upload assets
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
diff --git a/CLAUDE.md b/CLAUDE.md
index 0e67f211..29e8b24c 100644
--- a/CLAUDE.md
+++ b/CLAUDE.md
@@ -12,7 +12,7 @@ GoSQLX is a **production-ready**, **race-free**, high-performance SQL parsing SD
- Thread-safe with zero race conditions (20,000+ concurrent operations tested)
- 1.38M+ ops/sec sustained, 1.5M peak with memory-efficient object pooling
- ~80-85% SQL-99 compliance (window functions, CTEs, set operations, MERGE, etc.)
-- Multi-dialect support: PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLite, Snowflake, ClickHouse (8 dialects)
+- Multi-dialect support: PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLite, Snowflake, ClickHouse (8 dialects with dedicated grammar); `--dialect` also accepts `generic`, `bigquery`, `redshift` (11 names)
## Architecture
diff --git a/README.md b/README.md
index cca5cd1c..013ca6af 100644
--- a/README.md
+++ b/README.md
@@ -17,10 +17,10 @@
-| **~3.1M parses/sec†** | **318 ns parse latency†** | **~80–85% SQL-99 (est.)** | **8 dialects** | **0 race conditions** |
+| **~2.9M parses/sec†** | **349 ns parse latency†** | **~80–85% SQL-99 (est.)** | **8 dialects** | **0 race conditions** |
|:---:|:---:|:---:|:---:|:---:|
-† Parse stage only (pre-tokenized input to AST), `SELECT id, name FROM users`, Apple M4, Go 1.27, median of 10 runs of `BenchmarkPerformanceBaseline`. Complex queries take longer (see `performance_baselines.json`). Reproduce: `go test -run ^$ -bench BenchmarkPerformanceBaseline -benchmem -count=10 ./pkg/sql/parser/`.
+† Parse stage only (pre-tokenized input to AST), `SELECT id, name FROM users`, Apple M4, Go 1.27, median of 20 runs of `BenchmarkPerformanceBaseline`. Complex queries take longer (see `performance_baselines.json`). Reproduce: `go test -run ^$ -bench BenchmarkPerformanceBaseline -benchmem -count=20 ./pkg/sql/parser/`.
@@ -33,7 +33,7 @@
## What is GoSQLX?
-GoSQLX is a **production-ready SQL parsing SDK** for Go. It tokenizes, parses, and generates ASTs from SQL with zero-copy optimizations and intelligent object pooling - parsing a simple SELECT in about **318 ns (~3.1M parses/sec)**.
+GoSQLX is a **production-ready SQL parsing SDK** for Go. It tokenizes, parses, and generates ASTs from SQL with zero-copy optimizations and intelligent object pooling - parsing a simple SELECT in about **349 ns (~2.9M parses/sec)**.
### Why GoSQLX?
diff --git a/benchmarks/compare/results/latest.json b/benchmarks/compare/results/latest.json
index 4d7fadea..e0889052 100644
--- a/benchmarks/compare/results/latest.json
+++ b/benchmarks/compare/results/latest.json
@@ -1,21 +1,21 @@
{
"schemaVersion": 1,
- "generatedAt": "2026-10-15T22:14:33Z",
- "commit": "c95aa7c719d046d78a9f9075eb1b315bd043cf37",
+ "generatedAt": "2026-10-22T11:43:59Z",
+ "commit": "e9c5db91a8eda4f98d697a53dbd997ebd5255c87",
"dirty": false,
- "goVersion": "go1.27.2",
+ "goVersion": "go1.26.9",
"hardware": {
- "cpu": "Apple M4",
- "goos": "darwin",
- "goarch": "arm64",
- "numCPU": 10
+ "cpu": "AMD EPYC 9V74 80-Core Processor",
+ "goos": "linux",
+ "goarch": "amd64",
+ "numCPU": 4
},
"stage": "e2e",
"method": {
"command": "go test -run=^$ -bench=^BenchmarkParse$ -benchmem -count=10 .",
"count": 10,
"statistic": "median",
- "rawOutput": "results/latest.txt"
+ "rawOutput": "/home/runner/work/_temp/bench/latest.txt"
},
"caveat": "The libraries implement different SQL dialects and build different ASTs (pg_query_go wraps the real PostgreSQL parser through CGo and converts its tree to Go structs; Vitess, TiDB and xwb1989 implement MySQL grammars). Each figure is the end-to-end cost of turning the same SQL text into that library's AST on the stated hardware, not identical work.",
"parsers": [
@@ -23,7 +23,7 @@
"id": "gosqlx",
"name": "GoSQLX",
"module": "github.com/ajitpratap0/GoSQLX",
- "version": "commit c95aa7c719d0",
+ "version": "commit e9c5db91a8ed",
"dialect": "multi-dialect (default settings)",
"cgo": false
},
@@ -123,8 +123,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 924.8,
- "bytesPerOp": 2229,
+ "nsPerOp": 2138,
+ "bytesPerOp": 2226,
"allocsPerOp": 7
},
{
@@ -132,7 +132,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 7106.5,
+ "nsPerOp": 10811,
"bytesPerOp": 1816,
"allocsPerOp": 36
},
@@ -141,7 +141,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 870.2,
+ "nsPerOp": 1587,
"bytesPerOp": 840,
"allocsPerOp": 14
},
@@ -150,7 +150,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 1464,
+ "nsPerOp": 2800.5,
"bytesPerOp": 2296,
"allocsPerOp": 24
},
@@ -159,7 +159,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 3440.5,
+ "nsPerOp": 7896.5,
"bytesPerOp": 20008,
"allocsPerOp": 26
},
@@ -168,8 +168,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 2027.5,
- "bytesPerOp": 3945,
+ "nsPerOp": 4439,
+ "bytesPerOp": 3940,
"allocsPerOp": 21
},
{
@@ -177,7 +177,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 22686,
+ "nsPerOp": 32989.5,
"bytesPerOp": 5024,
"allocsPerOp": 111
},
@@ -186,7 +186,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2035,
+ "nsPerOp": 3625.5,
"bytesPerOp": 1528,
"allocsPerOp": 30
},
@@ -195,7 +195,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 3893.5,
+ "nsPerOp": 7217.5,
"bytesPerOp": 6032,
"allocsPerOp": 50
},
@@ -204,7 +204,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 5803,
+ "nsPerOp": 11826,
"bytesPerOp": 21128,
"allocsPerOp": 69
},
@@ -213,8 +213,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 3215,
- "bytesPerOp": 6063,
+ "nsPerOp": 6918.5,
+ "bytesPerOp": 6056.5,
"allocsPerOp": 20
},
{
@@ -222,7 +222,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 30034.5,
+ "nsPerOp": 43527.5,
"bytesPerOp": 6624,
"allocsPerOp": 145
},
@@ -231,7 +231,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2693.5,
+ "nsPerOp": 4699.5,
"bytesPerOp": 1776,
"allocsPerOp": 33
},
@@ -240,7 +240,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 4849.5,
+ "nsPerOp": 8534.5,
"bytesPerOp": 6416,
"allocsPerOp": 54
},
@@ -249,7 +249,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 11725,
+ "nsPerOp": 25930.5,
"bytesPerOp": 62480,
"allocsPerOp": 97
},
@@ -258,8 +258,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 2229.5,
- "bytesPerOp": 4193,
+ "nsPerOp": 4817.5,
+ "bytesPerOp": 4189,
"allocsPerOp": 21
},
{
@@ -267,7 +267,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 17666,
+ "nsPerOp": 25832,
"bytesPerOp": 4072,
"allocsPerOp": 86
},
@@ -276,7 +276,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 1778,
+ "nsPerOp": 3090,
"bytesPerOp": 1240,
"allocsPerOp": 25
},
@@ -285,7 +285,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 3417,
+ "nsPerOp": 6572,
"bytesPerOp": 5152,
"allocsPerOp": 45
},
@@ -294,7 +294,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 5897,
+ "nsPerOp": 12192,
"bytesPerOp": 20960,
"allocsPerOp": 61
},
@@ -303,8 +303,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 1887,
- "bytesPerOp": 3608,
+ "nsPerOp": 4076,
+ "bytesPerOp": 3605,
"allocsPerOp": 16
},
{
@@ -312,7 +312,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 15954.5,
+ "nsPerOp": 23526.5,
"bytesPerOp": 3816,
"allocsPerOp": 75
},
@@ -321,8 +321,8 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2175.5,
- "bytesPerOp": 4201,
+ "nsPerOp": 3976.5,
+ "bytesPerOp": 4200,
"allocsPerOp": 28
},
{
@@ -330,7 +330,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 3362,
+ "nsPerOp": 6279,
"bytesPerOp": 5224,
"allocsPerOp": 44
},
@@ -339,7 +339,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 9677.5,
+ "nsPerOp": 21828,
"bytesPerOp": 61896,
"allocsPerOp": 59
},
@@ -348,8 +348,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 2747.5,
- "bytesPerOp": 4940,
+ "nsPerOp": 5828.5,
+ "bytesPerOp": 4934,
"allocsPerOp": 24
},
{
@@ -357,7 +357,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 23176.5,
+ "nsPerOp": 33529.5,
"bytesPerOp": 5472,
"allocsPerOp": 112
},
@@ -366,7 +366,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2516.5,
+ "nsPerOp": 4415,
"bytesPerOp": 1896,
"allocsPerOp": 37
},
@@ -375,7 +375,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 4917.5,
+ "nsPerOp": 9157.5,
"bytesPerOp": 6936,
"allocsPerOp": 64
},
@@ -393,8 +393,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 1898.5,
- "bytesPerOp": 3248,
+ "nsPerOp": 4062,
+ "bytesPerOp": 3243.5,
"allocsPerOp": 14
},
{
@@ -402,7 +402,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 14279,
+ "nsPerOp": 21010,
"bytesPerOp": 3440,
"allocsPerOp": 70
},
@@ -411,8 +411,8 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2070.5,
- "bytesPerOp": 3977,
+ "nsPerOp": 3903,
+ "bytesPerOp": 3976,
"allocsPerOp": 25
},
{
@@ -420,7 +420,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 3220.5,
+ "nsPerOp": 6021.5,
"bytesPerOp": 4688,
"allocsPerOp": 44
},
@@ -438,8 +438,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 8775.5,
- "bytesPerOp": 17697,
+ "nsPerOp": 18293,
+ "bytesPerOp": 17667,
"allocsPerOp": 56
},
{
@@ -447,7 +447,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 81637,
+ "nsPerOp": 116212.5,
"bytesPerOp": 17512,
"allocsPerOp": 398
},
@@ -456,8 +456,8 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 6988.5,
- "bytesPerOp": 6402,
+ "nsPerOp": 12304.5,
+ "bytesPerOp": 6401,
"allocsPerOp": 73
},
{
@@ -465,7 +465,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 12445,
+ "nsPerOp": 21303,
"bytesPerOp": 16048,
"allocsPerOp": 124
},
@@ -474,7 +474,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 21259.5,
+ "nsPerOp": 42654,
"bytesPerOp": 66120,
"allocsPerOp": 253
},
@@ -483,8 +483,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 1442.5,
- "bytesPerOp": 2556,
+ "nsPerOp": 3185,
+ "bytesPerOp": 2554,
"allocsPerOp": 19
},
{
@@ -492,7 +492,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 8917.5,
+ "nsPerOp": 13373,
"bytesPerOp": 2432,
"allocsPerOp": 51
},
@@ -501,7 +501,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 1248.5,
+ "nsPerOp": 2202,
"bytesPerOp": 952,
"allocsPerOp": 17
},
@@ -510,7 +510,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 2105,
+ "nsPerOp": 3913.5,
"bytesPerOp": 2832,
"allocsPerOp": 34
},
@@ -519,7 +519,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 4208.5,
+ "nsPerOp": 9105,
"bytesPerOp": 20176,
"allocsPerOp": 37
},
@@ -528,8 +528,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 1200,
- "bytesPerOp": 2165,
+ "nsPerOp": 2641,
+ "bytesPerOp": 2162,
"allocsPerOp": 15
},
{
@@ -537,7 +537,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 9422.5,
+ "nsPerOp": 14107.5,
"bytesPerOp": 2208,
"allocsPerOp": 50
},
@@ -546,7 +546,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 1158,
+ "nsPerOp": 2044,
"bytesPerOp": 920,
"allocsPerOp": 19
},
@@ -555,7 +555,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 2127,
+ "nsPerOp": 3922,
"bytesPerOp": 3032,
"allocsPerOp": 26
},
@@ -564,7 +564,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 4062.5,
+ "nsPerOp": 9032.5,
"bytesPerOp": 20208,
"allocsPerOp": 40
},
@@ -573,8 +573,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 841.2,
- "bytesPerOp": 1763.5,
+ "nsPerOp": 1771.5,
+ "bytesPerOp": 1761,
"allocsPerOp": 7
},
{
@@ -582,7 +582,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 5678,
+ "nsPerOp": 8875.5,
"bytesPerOp": 1416,
"allocsPerOp": 30
},
@@ -591,7 +591,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 755.3,
+ "nsPerOp": 1343,
"bytesPerOp": 704,
"allocsPerOp": 11
},
@@ -600,7 +600,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 1223,
+ "nsPerOp": 2311.5,
"bytesPerOp": 1840,
"allocsPerOp": 16
},
@@ -609,7 +609,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 3077.5,
+ "nsPerOp": 6735.5,
"bytesPerOp": 19928,
"allocsPerOp": 26
}
diff --git a/benchmarks/compare/results/latest.txt b/benchmarks/compare/results/latest.txt
index 1a4b7fc3..0af63439 100644
--- a/benchmarks/compare/results/latest.txt
+++ b/benchmarks/compare/results/latest.txt
@@ -1,536 +1,536 @@
-goos: darwin
-goarch: arm64
+goos: linux
+goarch: amd64
pkg: github.com/ajitpratap0/GoSQLX/benchmarks/compare
-cpu: Apple M4
-BenchmarkParse/simple_select/gosqlx-10 1205331 963.8 ns/op 26.98 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1311400 917.2 ns/op 28.35 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1296440 925.7 ns/op 28.09 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1290358 944.1 ns/op 27.54 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1301701 923.8 ns/op 28.15 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1287136 933.6 ns/op 27.85 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1292641 934.4 ns/op 27.83 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1308793 916.3 ns/op 28.38 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1305066 921.7 ns/op 28.21 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/gosqlx-10 1302364 918.9 ns/op 28.30 MB/s 2229 B/op 7 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 169172 7160 ns/op 3.63 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 167665 7128 ns/op 3.65 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 169520 7133 ns/op 3.65 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 168957 7103 ns/op 3.66 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 169552 7183 ns/op 3.62 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 169104 7082 ns/op 3.67 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 168786 7110 ns/op 3.66 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 169356 7049 ns/op 3.69 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 170034 7069 ns/op 3.68 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/pg_query_go-10 167488 7073 ns/op 3.68 MB/s 1816 B/op 36 allocs/op
-BenchmarkParse/simple_select/vitess-10 1381207 870.3 ns/op 29.87 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1378652 875.1 ns/op 29.71 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1380444 868.9 ns/op 29.92 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1377874 870.5 ns/op 29.87 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1381572 869.6 ns/op 29.90 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1352276 895.2 ns/op 29.04 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1386823 866.1 ns/op 30.02 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1378384 870.3 ns/op 29.88 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1377492 870.1 ns/op 29.88 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/vitess-10 1379822 869.9 ns/op 29.89 MB/s 840 B/op 14 allocs/op
-BenchmarkParse/simple_select/tidb-10 806733 1466 ns/op 17.73 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 825006 1467 ns/op 17.72 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 823141 1464 ns/op 17.76 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 832359 1460 ns/op 17.80 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 816466 1450 ns/op 17.93 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 843446 1468 ns/op 17.71 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 815281 1466 ns/op 17.73 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 829659 1463 ns/op 17.77 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 823508 1454 ns/op 17.89 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/tidb-10 829315 1464 ns/op 17.76 MB/s 2296 B/op 24 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 340920 3452 ns/op 7.53 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 351044 3430 ns/op 7.58 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 350763 3440 ns/op 7.56 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 356284 3421 ns/op 7.60 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 352190 3434 ns/op 7.57 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 346179 3453 ns/op 7.53 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 352971 3444 ns/op 7.55 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 349804 3484 ns/op 7.46 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 352042 3441 ns/op 7.56 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/simple_select/xwb1989-10 347580 3438 ns/op 7.56 MB/s 20008 B/op 26 allocs/op
-BenchmarkParse/select_where/gosqlx-10 581055 2027 ns/op 50.80 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 593836 2096 ns/op 49.15 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 592332 2010 ns/op 51.23 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 599889 2013 ns/op 51.17 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 590460 2032 ns/op 50.70 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 596536 2014 ns/op 51.13 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 603157 2017 ns/op 51.07 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 595182 2028 ns/op 50.80 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 591404 2044 ns/op 50.39 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/gosqlx-10 559384 2045 ns/op 50.38 MB/s 3945 B/op 21 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 52886 22665 ns/op 4.54 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 53043 22706 ns/op 4.54 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 53031 22691 ns/op 4.54 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 52902 22667 ns/op 4.54 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 51849 22797 ns/op 4.52 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 53094 22597 ns/op 4.56 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 53092 22640 ns/op 4.55 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 53043 22783 ns/op 4.52 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 53000 22688 ns/op 4.54 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/pg_query_go-10 52906 22684 ns/op 4.54 MB/s 5024 B/op 111 allocs/op
-BenchmarkParse/select_where/vitess-10 592594 2038 ns/op 50.53 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 593971 2043 ns/op 50.41 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 588639 2028 ns/op 50.80 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 587402 2034 ns/op 50.65 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 581106 2021 ns/op 50.97 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 601927 2034 ns/op 50.63 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 580285 2104 ns/op 48.94 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 588914 2038 ns/op 50.53 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 585511 2036 ns/op 50.59 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/vitess-10 599094 2030 ns/op 50.75 MB/s 1528 B/op 30 allocs/op
-BenchmarkParse/select_where/tidb-10 307315 3833 ns/op 26.87 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 313998 3893 ns/op 26.46 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 305127 3910 ns/op 26.34 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 305115 3861 ns/op 26.68 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 310608 3899 ns/op 26.41 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 308720 3935 ns/op 26.18 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 313838 3840 ns/op 26.82 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 306748 3924 ns/op 26.25 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 309698 3881 ns/op 26.54 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/tidb-10 313893 3894 ns/op 26.45 MB/s 6032 B/op 50 allocs/op
-BenchmarkParse/select_where/xwb1989-10 212360 5770 ns/op 17.85 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 207692 5786 ns/op 17.80 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 207625 5680 ns/op 18.13 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 208341 5787 ns/op 17.80 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 206746 5852 ns/op 17.60 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 206110 5803 ns/op 17.75 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 208396 5833 ns/op 17.66 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 208284 5803 ns/op 17.75 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 207535 5846 ns/op 17.62 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/select_where/xwb1989-10 204205 5808 ns/op 17.74 MB/s 21128 B/op 69 allocs/op
-BenchmarkParse/join/gosqlx-10 374524 3208 ns/op 39.27 MB/s 6063 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 373045 3191 ns/op 39.49 MB/s 6063 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 377418 3297 ns/op 38.21 MB/s 6064 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 380832 3217 ns/op 39.16 MB/s 6063 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 372670 3244 ns/op 38.84 MB/s 6063 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 380661 3213 ns/op 39.22 MB/s 6063 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 375260 3220 ns/op 39.13 MB/s 6064 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 372714 3217 ns/op 39.16 MB/s 6063 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 377085 3205 ns/op 39.31 MB/s 6064 B/op 20 allocs/op
-BenchmarkParse/join/gosqlx-10 377431 3212 ns/op 39.23 MB/s 6063 B/op 20 allocs/op
-BenchmarkParse/join/pg_query_go-10 39879 29946 ns/op 4.21 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 40033 29973 ns/op 4.20 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 39670 30176 ns/op 4.18 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 40065 30113 ns/op 4.18 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 39814 30052 ns/op 4.19 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 39844 30162 ns/op 4.18 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 40021 29983 ns/op 4.20 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 40094 29952 ns/op 4.21 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 39306 30272 ns/op 4.16 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/pg_query_go-10 39937 30017 ns/op 4.20 MB/s 6624 B/op 145 allocs/op
-BenchmarkParse/join/vitess-10 442500 2712 ns/op 46.46 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 441964 2696 ns/op 46.73 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 450360 2693 ns/op 46.79 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 445185 2691 ns/op 46.82 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 446822 2694 ns/op 46.77 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 446391 2688 ns/op 46.88 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 450394 2680 ns/op 47.02 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 444511 2775 ns/op 45.41 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 408220 2707 ns/op 46.54 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/vitess-10 446986 2687 ns/op 46.90 MB/s 1776 B/op 33 allocs/op
-BenchmarkParse/join/tidb-10 246697 4846 ns/op 26.00 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 249861 4856 ns/op 25.95 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 249193 4898 ns/op 25.73 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 245271 4853 ns/op 25.96 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 250851 4813 ns/op 26.18 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 251395 4788 ns/op 26.32 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 250114 4864 ns/op 25.91 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 244473 4872 ns/op 25.86 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 246771 4810 ns/op 26.19 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/tidb-10 253177 4837 ns/op 26.05 MB/s 6416 B/op 54 allocs/op
-BenchmarkParse/join/xwb1989-10 100044 11743 ns/op 10.73 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 103387 11750 ns/op 10.72 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 101452 11738 ns/op 10.73 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 102690 11734 ns/op 10.74 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 103125 11566 ns/op 10.89 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 100993 11725 ns/op 10.75 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 102726 11712 ns/op 10.76 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 103334 11637 ns/op 10.83 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 104163 11698 ns/op 10.77 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/join/xwb1989-10 101828 11725 ns/op 10.75 MB/s 62480 B/op 97 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 530880 2226 ns/op 37.74 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 549475 2232 ns/op 37.63 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 535580 2231 ns/op 37.65 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 548055 2279 ns/op 36.86 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 555523 2219 ns/op 37.85 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 550892 2228 ns/op 37.71 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 552961 2216 ns/op 37.91 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 546214 2211 ns/op 37.99 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 539742 2232 ns/op 37.63 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/gosqlx-10 538742 2232 ns/op 37.63 MB/s 4193 B/op 21 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 67814 17672 ns/op 4.75 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 67860 17659 ns/op 4.76 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 68103 17749 ns/op 4.73 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 68222 17712 ns/op 4.74 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 68200 17620 ns/op 4.77 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 67953 17648 ns/op 4.76 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 67969 17626 ns/op 4.77 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 68156 17660 ns/op 4.76 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 67744 17683 ns/op 4.75 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/pg_query_go-10 68054 17826 ns/op 4.71 MB/s 4072 B/op 86 allocs/op
-BenchmarkParse/aggregate/vitess-10 667510 1786 ns/op 47.03 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 676999 1778 ns/op 47.24 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 686161 1767 ns/op 47.53 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 681276 1775 ns/op 47.34 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 670518 1778 ns/op 47.24 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 674967 1767 ns/op 47.53 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 688219 1772 ns/op 47.40 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 682388 1783 ns/op 47.12 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 670663 1821 ns/op 46.12 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/vitess-10 641335 1798 ns/op 46.73 MB/s 1240 B/op 25 allocs/op
-BenchmarkParse/aggregate/tidb-10 350420 3478 ns/op 24.15 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 357739 3351 ns/op 25.07 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 359310 3414 ns/op 24.60 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 357648 3430 ns/op 24.49 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 350067 3382 ns/op 24.84 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 355304 3456 ns/op 24.30 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 339499 3463 ns/op 24.26 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 347366 3420 ns/op 24.56 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 356139 3364 ns/op 24.97 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/tidb-10 359343 3399 ns/op 24.72 MB/s 5152 B/op 45 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 210709 5734 ns/op 14.65 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 201357 5917 ns/op 14.20 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 204928 5892 ns/op 14.26 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 203266 5824 ns/op 14.42 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 211288 5889 ns/op 14.26 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 202080 5932 ns/op 14.16 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 206379 5904 ns/op 14.23 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 205866 5913 ns/op 14.21 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 203161 5902 ns/op 14.23 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/aggregate/xwb1989-10 207366 5755 ns/op 14.60 MB/s 20960 B/op 61 allocs/op
-BenchmarkParse/subquery/gosqlx-10 637798 1886 ns/op 43.47 MB/s 3608 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 635695 1888 ns/op 43.44 MB/s 3608 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 628084 1882 ns/op 43.58 MB/s 3608 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 646033 1879 ns/op 43.64 MB/s 3608 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 643606 1942 ns/op 42.22 MB/s 3609 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 630487 1892 ns/op 43.34 MB/s 3608 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 629350 1891 ns/op 43.37 MB/s 3609 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 629264 1892 ns/op 43.33 MB/s 3609 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 642171 1865 ns/op 43.96 MB/s 3608 B/op 16 allocs/op
-BenchmarkParse/subquery/gosqlx-10 650835 1883 ns/op 43.55 MB/s 3608 B/op 16 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 74934 15957 ns/op 5.14 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 75417 15951 ns/op 5.14 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 75255 15952 ns/op 5.14 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 75114 16019 ns/op 5.12 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 74732 15985 ns/op 5.13 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 75489 15969 ns/op 5.13 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 74553 15983 ns/op 5.13 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 75424 15896 ns/op 5.16 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 75074 15902 ns/op 5.16 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/pg_query_go-10 75376 15933 ns/op 5.15 MB/s 3816 B/op 75 allocs/op
-BenchmarkParse/subquery/vitess-10 554044 2181 ns/op 37.60 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 554922 2160 ns/op 37.95 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 556538 2171 ns/op 37.77 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 555832 2178 ns/op 37.64 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 542863 2184 ns/op 37.55 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 555850 2175 ns/op 37.70 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 545984 2173 ns/op 37.73 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 556623 2144 ns/op 38.25 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 567116 2176 ns/op 37.69 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/vitess-10 546406 2212 ns/op 37.08 MB/s 4201 B/op 28 allocs/op
-BenchmarkParse/subquery/tidb-10 324537 3394 ns/op 24.16 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 364672 3323 ns/op 24.67 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 358087 3364 ns/op 24.38 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 357378 3360 ns/op 24.40 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 355984 3373 ns/op 24.31 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 351640 3366 ns/op 24.36 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 357507 3312 ns/op 24.76 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 364434 3347 ns/op 24.50 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 364459 3367 ns/op 24.36 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/tidb-10 355126 3347 ns/op 24.50 MB/s 5224 B/op 44 allocs/op
-BenchmarkParse/subquery/xwb1989-10 123565 9642 ns/op 8.50 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 123961 9695 ns/op 8.46 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 124776 9669 ns/op 8.48 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 122996 9714 ns/op 8.44 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 123957 9714 ns/op 8.44 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 124688 9637 ns/op 8.51 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 124045 9666 ns/op 8.48 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 123721 9686 ns/op 8.47 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 122265 9717 ns/op 8.44 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/subquery/xwb1989-10 123855 9638 ns/op 8.51 MB/s 61896 B/op 59 allocs/op
-BenchmarkParse/cte/gosqlx-10 436412 2766 ns/op 44.82 MB/s 4940 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 435508 2762 ns/op 44.89 MB/s 4940 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 436161 2749 ns/op 45.10 MB/s 4940 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 440197 2726 ns/op 45.48 MB/s 4940 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 437841 2719 ns/op 45.60 MB/s 4939 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 444148 2814 ns/op 44.07 MB/s 4940 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 437534 2741 ns/op 45.24 MB/s 4940 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 437148 2746 ns/op 45.15 MB/s 4940 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 440025 2713 ns/op 45.71 MB/s 4939 B/op 24 allocs/op
-BenchmarkParse/cte/gosqlx-10 436941 2756 ns/op 44.99 MB/s 4940 B/op 24 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51798 23169 ns/op 5.35 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51756 23183 ns/op 5.35 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51732 23150 ns/op 5.36 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51657 23268 ns/op 5.33 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51579 23141 ns/op 5.36 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51952 23170 ns/op 5.35 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51572 23208 ns/op 5.34 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51861 23126 ns/op 5.36 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51690 23197 ns/op 5.35 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/pg_query_go-10 51712 23210 ns/op 5.34 MB/s 5472 B/op 112 allocs/op
-BenchmarkParse/cte/vitess-10 478044 2525 ns/op 49.11 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 475990 2516 ns/op 49.29 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 480805 2518 ns/op 49.24 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 482816 2497 ns/op 49.65 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 481288 2514 ns/op 49.32 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 471033 2521 ns/op 49.19 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 479349 2513 ns/op 49.35 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 483002 2507 ns/op 49.46 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 474315 2519 ns/op 49.23 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/vitess-10 474140 2517 ns/op 49.26 MB/s 1896 B/op 37 allocs/op
-BenchmarkParse/cte/tidb-10 241821 4921 ns/op 25.20 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 223656 5033 ns/op 24.64 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 245962 4833 ns/op 25.66 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 249741 4867 ns/op 25.48 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 242066 4921 ns/op 25.20 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 246309 4884 ns/op 25.39 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 250138 4854 ns/op 25.55 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 241045 4936 ns/op 25.12 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 242700 4914 ns/op 25.23 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/cte/tidb-10 246721 4947 ns/op 25.07 MB/s 6936 B/op 64 allocs/op
-BenchmarkParse/window/gosqlx-10 634604 1907 ns/op 49.28 MB/s 3248 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 633843 1886 ns/op 49.85 MB/s 3248 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 645668 1886 ns/op 49.85 MB/s 3248 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 635454 1900 ns/op 49.48 MB/s 3248 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 631231 1926 ns/op 48.80 MB/s 3248 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 628738 1888 ns/op 49.80 MB/s 3248 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 624086 1897 ns/op 49.55 MB/s 3248 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 632845 1902 ns/op 49.42 MB/s 3248 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 631878 1900 ns/op 49.47 MB/s 3247 B/op 14 allocs/op
-BenchmarkParse/window/gosqlx-10 641713 1897 ns/op 49.55 MB/s 3247 B/op 14 allocs/op
-BenchmarkParse/window/pg_query_go-10 83674 14247 ns/op 6.60 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 84284 14256 ns/op 6.59 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 83949 14272 ns/op 6.59 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 83940 14304 ns/op 6.57 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 83768 14270 ns/op 6.59 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 84253 14251 ns/op 6.60 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 83808 14762 ns/op 6.37 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 84051 14286 ns/op 6.58 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 83864 14309 ns/op 6.57 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/pg_query_go-10 83991 14318 ns/op 6.57 MB/s 3440 B/op 70 allocs/op
-BenchmarkParse/window/vitess-10 583695 2044 ns/op 45.98 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 585202 2062 ns/op 45.59 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 585746 2076 ns/op 45.28 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 574402 2076 ns/op 45.29 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 585601 2063 ns/op 45.57 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 582162 2073 ns/op 45.34 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 575014 2070 ns/op 45.40 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 578028 2072 ns/op 45.37 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 578694 2071 ns/op 45.39 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/vitess-10 585914 2043 ns/op 46.00 MB/s 3977 B/op 25 allocs/op
-BenchmarkParse/window/tidb-10 375931 3209 ns/op 29.29 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 371350 3229 ns/op 29.11 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 380398 3214 ns/op 29.25 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 379227 3189 ns/op 29.47 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 366132 3243 ns/op 28.98 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 374250 3241 ns/op 29.01 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 377715 3227 ns/op 29.13 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 374372 3239 ns/op 29.02 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 374463 3191 ns/op 29.46 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/window/tidb-10 378032 3192 ns/op 29.45 MB/s 4688 B/op 44 allocs/op
-BenchmarkParse/complex/gosqlx-10 136204 8774 ns/op 43.08 MB/s 17696 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 135841 8798 ns/op 42.96 MB/s 17698 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 128252 8846 ns/op 42.73 MB/s 17697 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 137392 8771 ns/op 43.09 MB/s 17695 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 134762 8794 ns/op 42.99 MB/s 17696 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 136152 8778 ns/op 43.06 MB/s 17698 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 137815 8747 ns/op 43.21 MB/s 17696 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 136779 8777 ns/op 43.07 MB/s 17697 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 139512 8587 ns/op 44.02 MB/s 17697 B/op 56 allocs/op
-BenchmarkParse/complex/gosqlx-10 139551 8745 ns/op 43.23 MB/s 17698 B/op 56 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14727 81583 ns/op 4.63 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14728 81401 ns/op 4.64 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14748 81450 ns/op 4.64 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14712 81572 ns/op 4.63 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14683 81748 ns/op 4.62 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14676 81737 ns/op 4.62 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14667 81839 ns/op 4.62 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14713 81531 ns/op 4.64 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14575 82083 ns/op 4.61 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/pg_query_go-10 14694 81691 ns/op 4.63 MB/s 17512 B/op 398 allocs/op
-BenchmarkParse/complex/vitess-10 170446 6952 ns/op 54.37 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 174482 6923 ns/op 54.60 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 171472 6980 ns/op 54.15 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 173583 6987 ns/op 54.10 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 171741 7040 ns/op 53.69 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 170394 7053 ns/op 53.60 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 171735 6965 ns/op 54.27 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 173744 7173 ns/op 52.69 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 170352 7011 ns/op 53.91 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/vitess-10 171687 6990 ns/op 54.08 MB/s 6402 B/op 73 allocs/op
-BenchmarkParse/complex/tidb-10 97884 12257 ns/op 30.84 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 95959 12339 ns/op 30.64 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 98222 12464 ns/op 30.33 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 95864 12727 ns/op 29.70 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 96322 12475 ns/op 30.30 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 95946 12426 ns/op 30.42 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 98073 12259 ns/op 30.83 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 96908 12477 ns/op 30.30 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 95728 12471 ns/op 30.31 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/tidb-10 96472 12387 ns/op 30.52 MB/s 16048 B/op 124 allocs/op
-BenchmarkParse/complex/xwb1989-10 57166 21394 ns/op 17.67 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 57129 21242 ns/op 17.79 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 51573 21987 ns/op 17.19 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 56037 21303 ns/op 17.74 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 57049 21171 ns/op 17.85 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 58198 20811 ns/op 18.16 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 57582 21168 ns/op 17.86 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 55980 21277 ns/op 17.77 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 56080 20961 ns/op 18.03 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/complex/xwb1989-10 55353 21488 ns/op 17.59 MB/s 66120 B/op 253 allocs/op
-BenchmarkParse/insert/gosqlx-10 818102 1442 ns/op 52.72 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 832234 1444 ns/op 52.62 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 829215 1442 ns/op 52.71 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 830947 1476 ns/op 51.51 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 847452 1428 ns/op 53.23 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 847801 1436 ns/op 52.92 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 846945 1443 ns/op 52.66 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 840843 1444 ns/op 52.64 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 834022 1432 ns/op 53.06 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/gosqlx-10 830677 1444 ns/op 52.63 MB/s 2556 B/op 19 allocs/op
-BenchmarkParse/insert/pg_query_go-10 133434 8932 ns/op 8.51 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 134875 8938 ns/op 8.50 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 133628 8928 ns/op 8.51 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 134530 8896 ns/op 8.54 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 134727 8878 ns/op 8.56 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 134184 8936 ns/op 8.51 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 134876 8916 ns/op 8.52 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 134798 8893 ns/op 8.55 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 135577 8883 ns/op 8.56 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/pg_query_go-10 134430 8919 ns/op 8.52 MB/s 2432 B/op 51 allocs/op
-BenchmarkParse/insert/vitess-10 962946 1249 ns/op 60.85 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 966968 1249 ns/op 60.85 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 969409 1244 ns/op 61.12 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 987910 1240 ns/op 61.28 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 976300 1252 ns/op 60.69 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 957908 1274 ns/op 59.66 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 982224 1248 ns/op 60.91 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 977888 1239 ns/op 61.36 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 985123 1247 ns/op 60.95 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/vitess-10 933742 1292 ns/op 58.84 MB/s 952 B/op 17 allocs/op
-BenchmarkParse/insert/tidb-10 558066 2103 ns/op 36.13 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 573566 2104 ns/op 36.12 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 568962 2092 ns/op 36.34 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 576465 2123 ns/op 35.80 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 565436 2116 ns/op 35.92 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 569139 2282 ns/op 33.30 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 579294 2082 ns/op 36.51 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 572268 2099 ns/op 36.21 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 566894 2107 ns/op 36.07 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/tidb-10 578168 2106 ns/op 36.09 MB/s 2832 B/op 34 allocs/op
-BenchmarkParse/insert/xwb1989-10 289640 4206 ns/op 18.07 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 290122 4176 ns/op 18.20 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 286712 4237 ns/op 17.94 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 286843 4222 ns/op 18.00 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 285258 4216 ns/op 18.03 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 284898 4186 ns/op 18.16 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 290206 4205 ns/op 18.08 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 283263 4217 ns/op 18.02 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 282490 4211 ns/op 18.05 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/insert/xwb1989-10 287802 4206 ns/op 18.07 MB/s 20176 B/op 37 allocs/op
-BenchmarkParse/update/gosqlx-10 1000000 1188 ns/op 46.31 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 1000000 1193 ns/op 46.09 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 1000000 1198 ns/op 45.91 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 1000000 1199 ns/op 45.87 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 1000000 1222 ns/op 45.01 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 896924 1205 ns/op 45.64 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 992449 1205 ns/op 45.64 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 995319 1204 ns/op 45.69 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 1000000 1201 ns/op 45.81 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/gosqlx-10 1000000 1193 ns/op 46.11 MB/s 2165 B/op 15 allocs/op
-BenchmarkParse/update/pg_query_go-10 127410 9397 ns/op 5.85 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 126898 9462 ns/op 5.81 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 127165 9431 ns/op 5.83 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 128190 9449 ns/op 5.82 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 127945 9416 ns/op 5.84 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 128257 9426 ns/op 5.84 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 126867 9418 ns/op 5.84 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 126945 9420 ns/op 5.84 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 126969 9425 ns/op 5.84 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/pg_query_go-10 128050 9384 ns/op 5.86 MB/s 2208 B/op 50 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1157 ns/op 47.54 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1162 ns/op 47.35 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1161 ns/op 47.37 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1153 ns/op 47.72 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1155 ns/op 47.61 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1159 ns/op 47.47 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1159 ns/op 47.45 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1160 ns/op 47.40 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1153 ns/op 47.70 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/vitess-10 1000000 1153 ns/op 47.72 MB/s 920 B/op 19 allocs/op
-BenchmarkParse/update/tidb-10 551372 2134 ns/op 25.78 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 545880 2186 ns/op 25.17 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 561114 2123 ns/op 25.91 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 568509 2139 ns/op 25.71 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 571093 2119 ns/op 25.96 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 563742 2131 ns/op 25.81 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 567157 2122 ns/op 25.92 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 574513 2115 ns/op 26.01 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 571936 2102 ns/op 26.16 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/tidb-10 562267 2134 ns/op 25.77 MB/s 3032 B/op 26 allocs/op
-BenchmarkParse/update/xwb1989-10 292946 4069 ns/op 13.52 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 297984 4067 ns/op 13.52 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 293910 4036 ns/op 13.63 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 297285 4035 ns/op 13.63 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 293653 4065 ns/op 13.53 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 292176 4066 ns/op 13.53 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 296833 4052 ns/op 13.58 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 303034 4032 ns/op 13.64 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 297022 4060 ns/op 13.55 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/update/xwb1989-10 296780 4075 ns/op 13.50 MB/s 20208 B/op 40 allocs/op
-BenchmarkParse/delete/gosqlx-10 1430456 839.1 ns/op 61.97 MB/s 1763 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1433896 836.1 ns/op 62.19 MB/s 1764 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1446500 830.2 ns/op 62.63 MB/s 1763 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1424953 840.3 ns/op 61.88 MB/s 1764 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1426291 843.5 ns/op 61.65 MB/s 1764 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1430385 840.5 ns/op 61.86 MB/s 1763 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1440818 850.6 ns/op 61.13 MB/s 1764 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1411521 848.4 ns/op 61.29 MB/s 1763 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1429527 841.8 ns/op 61.77 MB/s 1764 B/op 7 allocs/op
-BenchmarkParse/delete/gosqlx-10 1426732 842.1 ns/op 61.75 MB/s 1763 B/op 7 allocs/op
-BenchmarkParse/delete/pg_query_go-10 209248 5685 ns/op 9.15 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 213735 5673 ns/op 9.17 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 212568 5658 ns/op 9.19 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 212192 5684 ns/op 9.15 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 211570 5687 ns/op 9.14 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 212301 5672 ns/op 9.17 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 211966 5673 ns/op 9.17 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 211599 5682 ns/op 9.15 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 212420 5681 ns/op 9.15 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/pg_query_go-10 210556 5675 ns/op 9.16 MB/s 1416 B/op 30 allocs/op
-BenchmarkParse/delete/vitess-10 1598404 751.0 ns/op 69.24 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1603329 751.9 ns/op 69.16 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1586271 755.8 ns/op 68.80 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1579743 757.6 ns/op 68.63 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1579573 756.0 ns/op 68.78 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1601599 752.1 ns/op 69.14 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1583541 759.1 ns/op 68.50 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1591537 754.0 ns/op 68.96 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1583011 756.6 ns/op 68.73 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/vitess-10 1584346 754.8 ns/op 68.89 MB/s 704 B/op 11 allocs/op
-BenchmarkParse/delete/tidb-10 960265 1213 ns/op 42.86 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 969115 1224 ns/op 42.48 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 976671 1256 ns/op 41.40 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 983599 1232 ns/op 42.22 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 954372 1215 ns/op 42.78 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 983629 1221 ns/op 42.59 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 987373 1223 ns/op 42.51 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 971187 1223 ns/op 42.52 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 983623 1218 ns/op 42.69 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/tidb-10 996694 1223 ns/op 42.53 MB/s 1840 B/op 16 allocs/op
-BenchmarkParse/delete/xwb1989-10 386890 3087 ns/op 16.85 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 391888 3081 ns/op 16.88 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 392005 3075 ns/op 16.91 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 388528 3069 ns/op 16.94 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 389894 3086 ns/op 16.85 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 387535 3083 ns/op 16.87 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 392520 3080 ns/op 16.88 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 395796 3071 ns/op 16.93 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 393980 3059 ns/op 17.00 MB/s 19928 B/op 26 allocs/op
-BenchmarkParse/delete/xwb1989-10 390082 3072 ns/op 16.93 MB/s 19928 B/op 26 allocs/op
+cpu: AMD EPYC 9V74 80-Core Processor
+BenchmarkParse/simple_select/gosqlx-4 550184 2165 ns/op 12.01 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 577660 2124 ns/op 12.24 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 592738 2073 ns/op 12.54 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 589029 2117 ns/op 12.28 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 564424 2102 ns/op 12.37 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 562554 2542 ns/op 10.23 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 595471 2134 ns/op 12.18 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 575881 2151 ns/op 12.09 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 554829 2147 ns/op 12.11 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/gosqlx-4 577960 2142 ns/op 12.14 MB/s 2226 B/op 7 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 107365 10852 ns/op 2.40 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 110424 10806 ns/op 2.41 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 111973 10780 ns/op 2.41 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 108955 10845 ns/op 2.40 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 109804 10826 ns/op 2.40 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 109345 10803 ns/op 2.41 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 109981 10885 ns/op 2.39 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 109185 10801 ns/op 2.41 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 111134 10806 ns/op 2.41 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/pg_query_go-4 111025 10816 ns/op 2.40 MB/s 1816 B/op 36 allocs/op
+BenchmarkParse/simple_select/vitess-4 735666 1581 ns/op 16.45 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 761072 1583 ns/op 16.42 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 780078 1593 ns/op 16.33 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 729146 1591 ns/op 16.34 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 766567 1583 ns/op 16.43 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 772653 1587 ns/op 16.39 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 752611 1598 ns/op 16.27 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 765382 1590 ns/op 16.35 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 723072 1581 ns/op 16.44 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/vitess-4 685665 1587 ns/op 16.38 MB/s 840 B/op 14 allocs/op
+BenchmarkParse/simple_select/tidb-4 412234 2816 ns/op 9.23 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 428722 2798 ns/op 9.29 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 422436 2803 ns/op 9.28 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 427742 2800 ns/op 9.29 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 435636 2801 ns/op 9.28 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 433112 2790 ns/op 9.32 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 432859 2799 ns/op 9.29 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 431732 2809 ns/op 9.25 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 423282 2808 ns/op 9.26 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/tidb-4 422385 2795 ns/op 9.30 MB/s 2296 B/op 24 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 133941 7896 ns/op 3.29 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 152023 7823 ns/op 3.32 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 151917 7858 ns/op 3.31 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 154545 7792 ns/op 3.34 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 154864 7904 ns/op 3.29 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 143568 7897 ns/op 3.29 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 152295 7831 ns/op 3.32 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 150033 7902 ns/op 3.29 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 148938 7921 ns/op 3.28 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/simple_select/xwb1989-4 153265 7971 ns/op 3.26 MB/s 20008 B/op 26 allocs/op
+BenchmarkParse/select_where/gosqlx-4 261349 4422 ns/op 23.29 MB/s 3940 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 271215 4443 ns/op 23.18 MB/s 3941 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 272218 4460 ns/op 23.09 MB/s 3940 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 269482 4486 ns/op 22.96 MB/s 3940 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 270447 4439 ns/op 23.20 MB/s 3940 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 268682 4409 ns/op 23.36 MB/s 3940 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 270007 4423 ns/op 23.29 MB/s 3940 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 264112 4439 ns/op 23.20 MB/s 3941 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 265161 4433 ns/op 23.23 MB/s 3940 B/op 21 allocs/op
+BenchmarkParse/select_where/gosqlx-4 261616 4449 ns/op 23.15 MB/s 3941 B/op 21 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36442 33097 ns/op 3.11 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36223 32989 ns/op 3.12 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36097 33026 ns/op 3.12 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36682 32877 ns/op 3.13 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36273 32990 ns/op 3.12 MB/s 5023 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36284 32851 ns/op 3.14 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36393 32911 ns/op 3.13 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36079 33111 ns/op 3.11 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36490 32908 ns/op 3.13 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/pg_query_go-4 36259 33014 ns/op 3.12 MB/s 5024 B/op 111 allocs/op
+BenchmarkParse/select_where/vitess-4 329235 3612 ns/op 28.51 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 333584 3626 ns/op 28.40 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 334741 3630 ns/op 28.38 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 336530 3601 ns/op 28.60 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 329876 3609 ns/op 28.54 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 333627 3689 ns/op 27.92 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 332539 3625 ns/op 28.41 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 338812 3614 ns/op 28.50 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 295326 3632 ns/op 28.36 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/vitess-4 318315 3626 ns/op 28.40 MB/s 1528 B/op 30 allocs/op
+BenchmarkParse/select_where/tidb-4 165708 7237 ns/op 14.23 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 167156 7227 ns/op 14.25 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 165939 7190 ns/op 14.33 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 164336 7221 ns/op 14.26 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 165645 7201 ns/op 14.30 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 166773 7215 ns/op 14.28 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 163813 7224 ns/op 14.26 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 165808 7193 ns/op 14.32 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 167752 7210 ns/op 14.29 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/tidb-4 165886 7220 ns/op 14.27 MB/s 6032 B/op 50 allocs/op
+BenchmarkParse/select_where/xwb1989-4 96146 11948 ns/op 8.62 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 98494 11878 ns/op 8.67 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 102127 11818 ns/op 8.72 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 100915 11780 ns/op 8.74 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 102177 11884 ns/op 8.67 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 102360 11834 ns/op 8.70 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 100410 11810 ns/op 8.72 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 102798 11780 ns/op 8.74 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 102331 11786 ns/op 8.74 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/select_where/xwb1989-4 102648 11837 ns/op 8.70 MB/s 21128 B/op 69 allocs/op
+BenchmarkParse/join/gosqlx-4 171992 6921 ns/op 18.21 MB/s 6057 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 172884 6939 ns/op 18.16 MB/s 6057 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 170792 6916 ns/op 18.22 MB/s 6057 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 179179 6872 ns/op 18.34 MB/s 6056 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 171736 6892 ns/op 18.28 MB/s 6056 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 174106 6900 ns/op 18.26 MB/s 6056 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 170865 6926 ns/op 18.19 MB/s 6057 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 173450 6896 ns/op 18.27 MB/s 6056 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 173216 6926 ns/op 18.19 MB/s 6057 B/op 20 allocs/op
+BenchmarkParse/join/gosqlx-4 172425 6926 ns/op 18.19 MB/s 6056 B/op 20 allocs/op
+BenchmarkParse/join/pg_query_go-4 27418 43583 ns/op 2.89 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 27538 43502 ns/op 2.90 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 27698 43561 ns/op 2.89 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 27514 43541 ns/op 2.89 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 27656 43431 ns/op 2.90 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 26922 43907 ns/op 2.87 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 27584 43499 ns/op 2.90 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 27561 43514 ns/op 2.90 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 27408 43495 ns/op 2.90 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/pg_query_go-4 27423 43718 ns/op 2.88 MB/s 6624 B/op 145 allocs/op
+BenchmarkParse/join/vitess-4 250663 4661 ns/op 27.03 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 252516 4774 ns/op 26.40 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 256915 4652 ns/op 27.08 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 250102 4707 ns/op 26.77 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 252134 4705 ns/op 26.78 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 253516 4694 ns/op 26.84 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 254709 4688 ns/op 26.88 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 250843 4714 ns/op 26.73 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 254280 4690 ns/op 26.86 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/vitess-4 259554 4721 ns/op 26.69 MB/s 1776 B/op 33 allocs/op
+BenchmarkParse/join/tidb-4 139819 8568 ns/op 14.71 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 139305 8528 ns/op 14.77 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 139984 8533 ns/op 14.77 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 141516 8536 ns/op 14.76 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 142452 8532 ns/op 14.77 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 141140 8743 ns/op 14.41 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 141769 8508 ns/op 14.81 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 142045 8548 ns/op 14.74 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 138570 8527 ns/op 14.78 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/tidb-4 141874 8554 ns/op 14.73 MB/s 6416 B/op 54 allocs/op
+BenchmarkParse/join/xwb1989-4 45277 26237 ns/op 4.80 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 46234 25820 ns/op 4.88 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 46671 25869 ns/op 4.87 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 46420 25930 ns/op 4.86 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 46113 25909 ns/op 4.86 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 46629 26092 ns/op 4.83 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 46242 25906 ns/op 4.86 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 45868 26109 ns/op 4.83 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 46317 25931 ns/op 4.86 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/join/xwb1989-4 46413 25964 ns/op 4.85 MB/s 62480 B/op 97 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 234088 4824 ns/op 17.41 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 250750 4815 ns/op 17.45 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 252848 4816 ns/op 17.44 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 252102 4798 ns/op 17.51 MB/s 4188 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 251137 4824 ns/op 17.41 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 244936 4804 ns/op 17.49 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 250209 4823 ns/op 17.42 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 247395 4819 ns/op 17.43 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 245521 4820 ns/op 17.43 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/gosqlx-4 247052 4808 ns/op 17.47 MB/s 4189 B/op 21 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46218 25909 ns/op 3.24 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46377 25864 ns/op 3.25 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46232 25797 ns/op 3.26 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46234 25837 ns/op 3.25 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46509 25859 ns/op 3.25 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46280 25827 ns/op 3.25 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46027 25818 ns/op 3.25 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46334 25843 ns/op 3.25 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46458 25780 ns/op 3.26 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/pg_query_go-4 46405 25796 ns/op 3.26 MB/s 4072 B/op 86 allocs/op
+BenchmarkParse/aggregate/vitess-4 393062 3100 ns/op 27.09 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 395541 3086 ns/op 27.22 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 389971 3086 ns/op 27.22 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 395386 3089 ns/op 27.20 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 392798 3088 ns/op 27.20 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 389449 3084 ns/op 27.24 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 389719 3091 ns/op 27.18 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 391346 3112 ns/op 26.99 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 396313 3099 ns/op 27.10 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/vitess-4 397586 3091 ns/op 27.18 MB/s 1240 B/op 25 allocs/op
+BenchmarkParse/aggregate/tidb-4 180327 6579 ns/op 12.77 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 185520 6573 ns/op 12.78 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 183153 6565 ns/op 12.80 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 186602 6541 ns/op 12.84 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 183572 6561 ns/op 12.80 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 181821 6575 ns/op 12.78 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 181684 6591 ns/op 12.75 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 180860 6553 ns/op 12.82 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 184168 6597 ns/op 12.73 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/tidb-4 180608 6571 ns/op 12.78 MB/s 5152 B/op 45 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 97291 12282 ns/op 6.84 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 92499 12295 ns/op 6.83 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 98637 12196 ns/op 6.89 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 100057 12106 ns/op 6.94 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 99224 12141 ns/op 6.92 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 98451 12146 ns/op 6.92 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 97324 12336 ns/op 6.81 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 96862 12188 ns/op 6.89 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 98352 12210 ns/op 6.88 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/aggregate/xwb1989-4 98653 12183 ns/op 6.89 MB/s 20960 B/op 61 allocs/op
+BenchmarkParse/subquery/gosqlx-4 298152 4069 ns/op 20.15 MB/s 3604 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 293923 4090 ns/op 20.05 MB/s 3605 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 292872 4099 ns/op 20.01 MB/s 3605 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 285349 4082 ns/op 20.09 MB/s 3605 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 291655 4085 ns/op 20.07 MB/s 3605 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 286460 4079 ns/op 20.11 MB/s 3605 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 297607 4073 ns/op 20.13 MB/s 3605 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 285501 4073 ns/op 20.13 MB/s 3605 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 290371 4066 ns/op 20.17 MB/s 3604 B/op 16 allocs/op
+BenchmarkParse/subquery/gosqlx-4 296658 4072 ns/op 20.14 MB/s 3605 B/op 16 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50880 23498 ns/op 3.49 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 51150 23515 ns/op 3.49 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50560 23520 ns/op 3.49 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50514 23548 ns/op 3.48 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50761 23539 ns/op 3.48 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50665 23497 ns/op 3.49 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50859 23533 ns/op 3.48 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50618 23505 ns/op 3.49 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50493 23547 ns/op 3.48 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/pg_query_go-4 50620 23566 ns/op 3.48 MB/s 3816 B/op 75 allocs/op
+BenchmarkParse/subquery/vitess-4 297952 4002 ns/op 20.49 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 306862 3932 ns/op 20.86 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 295767 3993 ns/op 20.53 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 303201 3977 ns/op 20.62 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 290503 3972 ns/op 20.65 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 299409 3976 ns/op 20.62 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 298255 3994 ns/op 20.53 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 301222 3973 ns/op 20.64 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 290163 4120 ns/op 19.90 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/vitess-4 293262 3973 ns/op 20.64 MB/s 4200 B/op 28 allocs/op
+BenchmarkParse/subquery/tidb-4 192756 6434 ns/op 12.74 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 193618 6275 ns/op 13.07 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 187983 6275 ns/op 13.07 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 191377 6255 ns/op 13.11 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 189654 6283 ns/op 13.05 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 187143 6283 ns/op 13.05 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 191504 6285 ns/op 13.05 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 187026 6398 ns/op 12.82 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 189145 6212 ns/op 13.20 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/tidb-4 191660 6247 ns/op 13.13 MB/s 5224 B/op 44 allocs/op
+BenchmarkParse/subquery/xwb1989-4 55600 21790 ns/op 3.76 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 53832 21656 ns/op 3.79 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 54390 21824 ns/op 3.76 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 55082 21690 ns/op 3.78 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 53508 21932 ns/op 3.74 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 55032 21832 ns/op 3.76 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 53172 22092 ns/op 3.71 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 54913 21730 ns/op 3.77 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 52270 22008 ns/op 3.73 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/subquery/xwb1989-4 55213 21854 ns/op 3.75 MB/s 61896 B/op 59 allocs/op
+BenchmarkParse/cte/gosqlx-4 197883 5860 ns/op 21.16 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 202214 5846 ns/op 21.21 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 205615 5827 ns/op 21.28 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 205015 5803 ns/op 21.37 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 206756 5801 ns/op 21.38 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 206298 5830 ns/op 21.27 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 205254 5833 ns/op 21.26 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 207696 5808 ns/op 21.35 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 204594 5813 ns/op 21.33 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/gosqlx-4 208160 5841 ns/op 21.23 MB/s 4934 B/op 24 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35815 33531 ns/op 3.70 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35606 33549 ns/op 3.70 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35552 33572 ns/op 3.69 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35882 33474 ns/op 3.70 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35439 33572 ns/op 3.69 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35578 33528 ns/op 3.70 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35952 33384 ns/op 3.71 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35876 33495 ns/op 3.70 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35678 33514 ns/op 3.70 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/pg_query_go-4 35527 33557 ns/op 3.70 MB/s 5472 B/op 112 allocs/op
+BenchmarkParse/cte/vitess-4 268014 4399 ns/op 28.19 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 274662 4433 ns/op 27.97 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 269352 4438 ns/op 27.94 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 269190 4417 ns/op 28.07 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 278583 4387 ns/op 28.26 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 268128 4423 ns/op 28.03 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 272521 4409 ns/op 28.13 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 265116 4429 ns/op 27.99 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 269581 4395 ns/op 28.21 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/vitess-4 273996 4413 ns/op 28.10 MB/s 1896 B/op 37 allocs/op
+BenchmarkParse/cte/tidb-4 131078 9514 ns/op 13.03 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 131586 9177 ns/op 13.51 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 130900 9142 ns/op 13.56 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 131425 9143 ns/op 13.56 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 132009 9135 ns/op 13.57 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 131430 9160 ns/op 13.54 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 129867 9166 ns/op 13.53 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 131254 9174 ns/op 13.52 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 130651 9147 ns/op 13.56 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/cte/tidb-4 131623 9155 ns/op 13.55 MB/s 6936 B/op 64 allocs/op
+BenchmarkParse/window/gosqlx-4 286916 4071 ns/op 23.09 MB/s 3244 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 289770 4088 ns/op 23.00 MB/s 3244 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 296796 4062 ns/op 23.14 MB/s 3244 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 282289 4076 ns/op 23.06 MB/s 3243 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 300062 4071 ns/op 23.09 MB/s 3244 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 300421 4051 ns/op 23.20 MB/s 3243 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 288174 4052 ns/op 23.20 MB/s 3244 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 293410 4052 ns/op 23.20 MB/s 3243 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 288604 4062 ns/op 23.14 MB/s 3243 B/op 14 allocs/op
+BenchmarkParse/window/gosqlx-4 298544 4038 ns/op 23.28 MB/s 3243 B/op 14 allocs/op
+BenchmarkParse/window/pg_query_go-4 56670 21001 ns/op 4.48 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 56732 20995 ns/op 4.48 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 56608 21116 ns/op 4.45 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 56845 21002 ns/op 4.48 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 57105 21000 ns/op 4.48 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 57028 21025 ns/op 4.47 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 56594 21079 ns/op 4.46 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 56454 21018 ns/op 4.47 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 56821 21018 ns/op 4.47 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/pg_query_go-4 57139 20975 ns/op 4.48 MB/s 3440 B/op 70 allocs/op
+BenchmarkParse/window/vitess-4 310501 3891 ns/op 24.16 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 303672 3915 ns/op 24.01 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 311070 3846 ns/op 24.44 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 307821 3897 ns/op 24.12 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 304327 3915 ns/op 24.01 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 306081 3912 ns/op 24.03 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 314550 3835 ns/op 24.51 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 305894 3907 ns/op 24.06 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 302505 3905 ns/op 24.07 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/vitess-4 305857 3901 ns/op 24.09 MB/s 3976 B/op 25 allocs/op
+BenchmarkParse/window/tidb-4 198033 6006 ns/op 15.65 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 196977 6045 ns/op 15.55 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 194341 6042 ns/op 15.56 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 193904 6154 ns/op 15.27 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 197682 6024 ns/op 15.61 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 195944 6135 ns/op 15.32 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 199700 5984 ns/op 15.71 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 197946 6011 ns/op 15.64 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 200120 6019 ns/op 15.62 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/window/tidb-4 200749 5997 ns/op 15.67 MB/s 4688 B/op 44 allocs/op
+BenchmarkParse/complex/gosqlx-4 65539 18402 ns/op 20.54 MB/s 17669 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65408 18348 ns/op 20.60 MB/s 17670 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65672 18290 ns/op 20.67 MB/s 17668 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65380 18261 ns/op 20.70 MB/s 17665 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65379 18203 ns/op 20.77 MB/s 17666 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65305 18331 ns/op 20.62 MB/s 17668 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65278 18352 ns/op 20.60 MB/s 17668 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65298 18296 ns/op 20.66 MB/s 17666 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65518 18219 ns/op 20.75 MB/s 17666 B/op 56 allocs/op
+BenchmarkParse/complex/gosqlx-4 65701 18265 ns/op 20.69 MB/s 17665 B/op 56 allocs/op
+BenchmarkParse/complex/pg_query_go-4 10000 116432 ns/op 3.25 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 10000 116174 ns/op 3.25 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 10000 116396 ns/op 3.25 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 10000 115973 ns/op 3.26 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 10000 116586 ns/op 3.24 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 9848 116779 ns/op 3.24 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 8842 116082 ns/op 3.26 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 10000 116154 ns/op 3.25 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 10000 116251 ns/op 3.25 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/pg_query_go-4 9615 115973 ns/op 3.26 MB/s 17512 B/op 398 allocs/op
+BenchmarkParse/complex/vitess-4 102273 11764 ns/op 32.13 MB/s 6400 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 95331 12302 ns/op 30.73 MB/s 6401 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 96837 12307 ns/op 30.71 MB/s 6401 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 96782 12411 ns/op 30.46 MB/s 6401 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 96987 12300 ns/op 30.73 MB/s 6401 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 89032 13425 ns/op 28.16 MB/s 6401 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 96847 12264 ns/op 30.82 MB/s 6401 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 96556 12391 ns/op 30.51 MB/s 6400 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 97994 12260 ns/op 30.83 MB/s 6401 B/op 73 allocs/op
+BenchmarkParse/complex/vitess-4 96867 12313 ns/op 30.70 MB/s 6401 B/op 73 allocs/op
+BenchmarkParse/complex/tidb-4 56341 21399 ns/op 17.66 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 56432 21245 ns/op 17.79 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 56635 21284 ns/op 17.76 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 56436 21278 ns/op 17.76 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 56355 21293 ns/op 17.75 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 56253 21377 ns/op 17.68 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 55992 21584 ns/op 17.51 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 56467 21313 ns/op 17.74 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 56410 21270 ns/op 17.77 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/tidb-4 55993 21347 ns/op 17.71 MB/s 16048 B/op 124 allocs/op
+BenchmarkParse/complex/xwb1989-4 28218 42622 ns/op 8.87 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28017 42686 ns/op 8.86 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28042 42886 ns/op 8.81 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28060 42614 ns/op 8.87 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28096 42484 ns/op 8.90 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28068 42781 ns/op 8.84 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28111 42752 ns/op 8.84 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28296 42571 ns/op 8.88 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28110 42775 ns/op 8.84 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/complex/xwb1989-4 28058 42524 ns/op 8.89 MB/s 66120 B/op 253 allocs/op
+BenchmarkParse/insert/gosqlx-4 369238 3182 ns/op 23.88 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 363145 3187 ns/op 23.85 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 365388 3183 ns/op 23.88 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 371354 3179 ns/op 23.91 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 380617 3182 ns/op 23.88 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 372379 3182 ns/op 23.89 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 374344 3194 ns/op 23.79 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 366988 3198 ns/op 23.77 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 372565 3191 ns/op 23.82 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/gosqlx-4 372414 3187 ns/op 23.85 MB/s 2554 B/op 19 allocs/op
+BenchmarkParse/insert/pg_query_go-4 88260 13366 ns/op 5.69 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 89570 13399 ns/op 5.67 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 89497 13378 ns/op 5.68 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 89491 13387 ns/op 5.68 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 88568 13347 ns/op 5.69 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 88718 13365 ns/op 5.69 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 89515 13468 ns/op 5.64 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 89691 13347 ns/op 5.69 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 88111 13368 ns/op 5.69 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/pg_query_go-4 89616 13388 ns/op 5.68 MB/s 2432 B/op 51 allocs/op
+BenchmarkParse/insert/vitess-4 519781 2211 ns/op 34.38 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 572194 2193 ns/op 34.65 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 585940 2107 ns/op 36.07 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 550562 2122 ns/op 35.82 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 555115 2258 ns/op 33.66 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 539758 2212 ns/op 34.36 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 526794 2256 ns/op 33.69 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 577929 2125 ns/op 35.76 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 581437 2131 ns/op 35.67 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/vitess-4 547285 2241 ns/op 33.92 MB/s 952 B/op 17 allocs/op
+BenchmarkParse/insert/tidb-4 304446 3996 ns/op 19.02 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 299672 3910 ns/op 19.44 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 304461 3909 ns/op 19.44 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 308030 3912 ns/op 19.43 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 306724 3915 ns/op 19.41 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 302409 3902 ns/op 19.48 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 305596 3918 ns/op 19.40 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 308203 3917 ns/op 19.40 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 305240 3912 ns/op 19.43 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/tidb-4 306300 3919 ns/op 19.39 MB/s 2832 B/op 34 allocs/op
+BenchmarkParse/insert/xwb1989-4 131404 9086 ns/op 8.36 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 132901 9117 ns/op 8.34 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 133383 9103 ns/op 8.35 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 130206 9115 ns/op 8.34 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 130768 9107 ns/op 8.35 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 132027 9035 ns/op 8.41 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 134440 9097 ns/op 8.35 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 131169 9084 ns/op 8.37 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 131726 9193 ns/op 8.27 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/insert/xwb1989-4 132182 9187 ns/op 8.27 MB/s 20176 B/op 37 allocs/op
+BenchmarkParse/update/gosqlx-4 436803 2652 ns/op 20.74 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 449342 2644 ns/op 20.80 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 455259 2633 ns/op 20.89 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 463576 2632 ns/op 20.90 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 455952 2639 ns/op 20.84 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 432260 2644 ns/op 20.80 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 435280 2638 ns/op 20.85 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 461121 2636 ns/op 20.86 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 446146 2648 ns/op 20.77 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/gosqlx-4 457064 2643 ns/op 20.81 MB/s 2162 B/op 15 allocs/op
+BenchmarkParse/update/pg_query_go-4 84391 14128 ns/op 3.89 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 84100 14102 ns/op 3.90 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 84960 14107 ns/op 3.90 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 83605 14108 ns/op 3.90 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 84010 14106 ns/op 3.90 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 85746 14048 ns/op 3.92 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 84492 14169 ns/op 3.88 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 84540 14118 ns/op 3.90 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 84333 14128 ns/op 3.89 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/pg_query_go-4 84679 14091 ns/op 3.90 MB/s 2208 B/op 50 allocs/op
+BenchmarkParse/update/vitess-4 564475 2140 ns/op 25.70 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 582914 2039 ns/op 26.97 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 578767 2125 ns/op 25.89 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 608625 2031 ns/op 27.08 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 579189 2025 ns/op 27.17 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 594475 2035 ns/op 27.02 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 578253 2037 ns/op 27.00 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 583365 2145 ns/op 25.64 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 572985 2135 ns/op 25.76 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/vitess-4 606124 2049 ns/op 26.85 MB/s 920 B/op 19 allocs/op
+BenchmarkParse/update/tidb-4 296851 3937 ns/op 13.97 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 300938 3913 ns/op 14.06 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 308394 3927 ns/op 14.01 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 307603 3910 ns/op 14.07 MB/s 3031 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 309348 3905 ns/op 14.09 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 309646 3924 ns/op 14.01 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 305686 3920 ns/op 14.03 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 308978 3924 ns/op 14.02 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 305090 3902 ns/op 14.09 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/tidb-4 310851 3934 ns/op 13.98 MB/s 3032 B/op 26 allocs/op
+BenchmarkParse/update/xwb1989-4 132459 8983 ns/op 6.12 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 133771 9007 ns/op 6.11 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 130704 9018 ns/op 6.10 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 132942 9082 ns/op 6.06 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 129878 9073 ns/op 6.06 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 129433 9039 ns/op 6.08 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 131662 9088 ns/op 6.05 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 133023 9026 ns/op 6.09 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 131132 9046 ns/op 6.08 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/update/xwb1989-4 129909 8999 ns/op 6.11 MB/s 20208 B/op 40 allocs/op
+BenchmarkParse/delete/gosqlx-4 639997 1768 ns/op 29.42 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 645403 1780 ns/op 29.21 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 688838 1772 ns/op 29.34 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 673915 1776 ns/op 29.28 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 668134 1762 ns/op 29.51 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 676483 1763 ns/op 29.49 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 676879 1771 ns/op 29.35 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 667348 1778 ns/op 29.25 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 664420 1760 ns/op 29.55 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/gosqlx-4 685584 1774 ns/op 29.32 MB/s 1761 B/op 7 allocs/op
+BenchmarkParse/delete/pg_query_go-4 134185 8875 ns/op 5.86 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 132978 8886 ns/op 5.85 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 133191 8926 ns/op 5.83 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 131666 8892 ns/op 5.85 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 134271 8849 ns/op 5.88 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 135128 8871 ns/op 5.86 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 132243 8929 ns/op 5.82 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 135388 8876 ns/op 5.86 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 134258 8874 ns/op 5.86 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/pg_query_go-4 135986 8813 ns/op 5.90 MB/s 1416 B/op 30 allocs/op
+BenchmarkParse/delete/vitess-4 950258 1301 ns/op 39.96 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 880909 1380 ns/op 37.68 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 895996 1368 ns/op 38.01 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 918141 1272 ns/op 40.87 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 927412 1284 ns/op 40.50 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 883508 1393 ns/op 37.33 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 862076 1387 ns/op 37.48 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 769954 1405 ns/op 37.02 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 946540 1288 ns/op 40.37 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/vitess-4 913761 1318 ns/op 39.44 MB/s 704 B/op 11 allocs/op
+BenchmarkParse/delete/tidb-4 514225 2320 ns/op 22.42 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 506215 2319 ns/op 22.42 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 517897 2307 ns/op 22.54 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 479286 2323 ns/op 22.38 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 532419 2303 ns/op 22.58 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 518032 2275 ns/op 22.85 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 509821 2326 ns/op 22.36 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 524376 2295 ns/op 22.66 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 534526 2275 ns/op 22.86 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/tidb-4 524340 2316 ns/op 22.45 MB/s 1840 B/op 16 allocs/op
+BenchmarkParse/delete/xwb1989-4 177480 6732 ns/op 7.72 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 179558 6702 ns/op 7.76 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 173209 6777 ns/op 7.67 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 174307 6831 ns/op 7.61 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 174248 6791 ns/op 7.66 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 177211 6686 ns/op 7.78 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 178610 6663 ns/op 7.80 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 175335 6708 ns/op 7.75 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 171028 6739 ns/op 7.72 MB/s 19928 B/op 26 allocs/op
+BenchmarkParse/delete/xwb1989-4 169969 6753 ns/op 7.70 MB/s 19928 B/op 26 allocs/op
PASS
-ok github.com/ajitpratap0/GoSQLX/benchmarks/compare 637.199s
+ok github.com/ajitpratap0/GoSQLX/benchmarks/compare 633.663s
diff --git a/doc.go b/doc.go
index dd34541e..1c814eb5 100644
--- a/doc.go
+++ b/doc.go
@@ -287,6 +287,7 @@
//
// # Version History
//
+// v1.16.0: Performance audit, SQL highlighting, dialect-aware LSP, Claude Code plugin and ChatGPT app, pygosqlx on PyPI
// v1.15.0: ParseTree opaque Tree API, typed walkers
// v1.14.0: Dialect-aware transforms, Snowflake and ClickHouse coverage, schema introspection
// v1.13.0: ClickHouse dialect, LSP semantic tokens, parser API consolidation
diff --git a/docs/COMPARISON.md b/docs/COMPARISON.md
index 58f73232..1986902b 100644
--- a/docs/COMPARISON.md
+++ b/docs/COMPARISON.md
@@ -1,6 +1,6 @@
# GoSQLX vs Alternatives: Comprehensive Comparison
-**GoSQLX Version:** v1.15.0
+**GoSQLX Version:** v1.16.0
This guide helps you choose the right SQL parsing tool for your needs. We provide an honest assessment of GoSQLX's strengths and limitations compared to popular alternatives.
diff --git a/docs/guides/lint-sql-in-ci.md b/docs/guides/lint-sql-in-ci.md
index 61ac10dd..0dbc0c81 100644
--- a/docs/guides/lint-sql-in-ci.md
+++ b/docs/guides/lint-sql-in-ci.md
@@ -15,7 +15,7 @@ Pick one of three setups:
Install a specific release so that a new GoSQLX version cannot change your CI results overnight:
```bash
-go install github.com/ajitpratap0/GoSQLX/cmd/gosqlx@v1.15.0
+go install github.com/ajitpratap0/GoSQLX/cmd/gosqlx@v1.16.0
```
Bump the version deliberately, in its own pull request, the same way you would bump any other linter.
@@ -44,7 +44,7 @@ jobs:
with:
go-version: '1.26'
- name: Install gosqlx
- run: go install github.com/ajitpratap0/GoSQLX/cmd/gosqlx@v1.15.0
+ run: go install github.com/ajitpratap0/GoSQLX/cmd/gosqlx@v1.16.0
- name: Validate and lint SQL
run: gosqlx action --files '**/*.sql' --severity warning
- name: Check formatting
diff --git a/integrations/gorm/go.mod b/integrations/gorm/go.mod
index 1fd1365d..704218d5 100644
--- a/integrations/gorm/go.mod
+++ b/integrations/gorm/go.mod
@@ -3,7 +3,7 @@ module github.com/ajitpratap0/GoSQLX/integrations/gorm
go 1.26.1
require (
- github.com/ajitpratap0/GoSQLX v1.14.0
+ github.com/ajitpratap0/GoSQLX v1.16.0
gorm.io/driver/sqlite v1.5.6
gorm.io/gorm v1.25.10
)
diff --git a/integrations/gorm/go.sum b/integrations/gorm/go.sum
index b0f1f059..97d70174 100644
--- a/integrations/gorm/go.sum
+++ b/integrations/gorm/go.sum
@@ -14,8 +14,8 @@ github.com/ncruces/go-strftime v1.0.0 h1:HMFp8mLCTPp341M/ZnA4qaf7ZlsbTc+miZjCLOF
github.com/ncruces/go-strftime v1.0.0/go.mod h1:Fwc5htZGVVkseilnfgOVb9mKy6w1naJmn9CehxcKcls=
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE=
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
-golang.org/x/sys v0.42.0 h1:omrd2nAlyT5ESRdCLYdm3+fMfNFE/+Rf4bDIQImRJeo=
-golang.org/x/sys v0.42.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw=
+golang.org/x/sys v0.49.0 h1:XbzkgYJHdqh/8m2Uu0W/dQv8nktxx4BFHp1M0gROTXA=
+golang.org/x/sys v0.49.0/go.mod h1:hNLxWAXmnKAxqDtdwIYC4bM9oQPEecfsnNMuSxOs3og=
gorm.io/driver/sqlite v1.5.6 h1:fO/X46qn5NUEEOZtnjJRWRzZMe8nqJiQ9E+0hi+hKQE=
gorm.io/driver/sqlite v1.5.6/go.mod h1:U+J8craQU6Fzkcvu8oLeAQmi50TkwPEhHDEjQZXDah4=
gorm.io/gorm v1.25.10 h1:dQpO+33KalOA+aFYGlK+EfxcI5MbO7EP2yYygwh9h+s=
diff --git a/integrations/opentelemetry/go.mod b/integrations/opentelemetry/go.mod
index 8688c704..a2913836 100644
--- a/integrations/opentelemetry/go.mod
+++ b/integrations/opentelemetry/go.mod
@@ -3,7 +3,7 @@ module github.com/ajitpratap0/GoSQLX/integrations/opentelemetry
go 1.26.1
require (
- github.com/ajitpratap0/GoSQLX v1.14.0
+ github.com/ajitpratap0/GoSQLX v1.16.0
go.opentelemetry.io/otel v1.47.0
go.opentelemetry.io/otel/sdk v1.47.0
go.opentelemetry.io/otel/trace v1.47.0
diff --git a/llms.txt b/llms.txt
index 313ac442..5b2e8d06 100644
--- a/llms.txt
+++ b/llms.txt
@@ -2,7 +2,7 @@
> High-performance SQL parsing SDK for Go: zero-copy tokenizer, recursive-descent parser, AST, formatter, linter and security scanner. Multi-dialect and race-free.
-GoSQLX is a production-ready SQL parsing library for Go with zero-copy tokenization, recursive-descent parsing and AST generation backed by object pooling. It supports 8 dialects (PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLite, Snowflake, ClickHouse) and ships a CLI (`gosqlx`) for validation, formatting, linting, transpilation and security analysis. Apache-2.0 licensed. Requires Go 1.26+.
+GoSQLX is a production-ready SQL parsing library for Go with zero-copy tokenization, recursive-descent parsing and AST generation backed by object pooling. It supports 8 dialects with dedicated grammar (PostgreSQL, MySQL, MariaDB, SQL Server, Oracle, SQLite, Snowflake, ClickHouse); the `--dialect` flag also accepts `generic`, `bigquery` and `redshift` (generic keyword set, limited dialect-gated grammar). It ships a CLI (`gosqlx`) for validation, formatting, linting, transpilation and security analysis. Apache-2.0 licensed. Requires Go 1.26+.
Current stable version: v1.16.0
Website: https://gosqlx.dev
@@ -15,7 +15,7 @@ Interactive Playground: https://gosqlx.dev/playground/
- MCP server tools: 7
- SQL-99 compliance: ~80–85% (estimated)
- QA corpus (v1.15.0): Snowflake 87/87, ClickHouse 83/83
-- Performance: ~318 ns/op (~3.14M ops/sec) for a simple SELECT (parse stage) on Apple M4, Go 1.27. This is the parse stage only (pre-tokenized input), not tokenize or end-to-end. Source: BenchmarkPerformanceBaseline, median of 10 runs, re-measured 2026-10-13.
+- Performance: ~349 ns/op (~2.87M ops/sec) for a simple SELECT (parse stage) on Apple M4, Go 1.27. This is the parse stage only (pre-tokenized input), not tokenize or end-to-end. Source: BenchmarkPerformanceBaseline, median of 20 runs, re-measured 2026-10-22.
## Documentation
diff --git a/performance_baselines.json b/performance_baselines.json
index 358eae5f..aa07ad55 100644
--- a/performance_baselines.json
+++ b/performance_baselines.json
@@ -1,40 +1,40 @@
{
"version": "1.16.0",
- "updated": "2026-10-13",
+ "updated": "2026-10-22",
"baselines": {
"SimpleSelect": {
"ns_per_op": 800,
"tolerance_percent": 60,
"description": "Basic SELECT query: SELECT id, name FROM users",
- "current_performance": "~318 ns/op on Apple M4 (median of 10 runs, re-measured 2026-10-13); ~467-918 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
+ "current_performance": "~349 ns/op on Apple M4 (median of 20 runs, re-measured 2026-10-22); ~467-918 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
"note": "Measured with BenchmarkPerformanceBaseline (ParseFromModelTokens production path), -count=10 -benchmem, median. Baseline set at ~2.5x the M4 median: GitHub ubuntu-latest runners measure about 1.5-3.2x slower than M4 on these queries (up to ~3.2x), so a 1.5x baseline (limit ~2.4x M4 at this tolerance) would fail CI's slowest runs."
},
"ComplexQuery": {
"ns_per_op": 2900,
"tolerance_percent": 65,
"description": "Complex SELECT with JOIN, WHERE, ORDER BY, LIMIT",
- "current_performance": "~1165 ns/op on Apple M4 (median of 10 runs, re-measured 2026-10-13); ~1842-3386 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
+ "current_performance": "~1234 ns/op on Apple M4 (median of 20 runs, re-measured 2026-10-22); ~1842-3386 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
"note": "Measured with BenchmarkPerformanceBaseline (ParseFromModelTokens production path), -count=10 -benchmem, median. Baseline set at ~2.5x the M4 median: GitHub ubuntu-latest runners measure about 1.5-3.2x slower than M4 on these queries (up to ~3.2x), so a 1.5x baseline (limit ~2.4x M4 at this tolerance) would fail CI's slowest runs."
},
"WindowFunction": {
"ns_per_op": 1500,
"tolerance_percent": 60,
"description": "Window function query: ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...)",
- "current_performance": "~585 ns/op on Apple M4 (median of 10 runs, re-measured 2026-10-13); ~940-1876 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
+ "current_performance": "~631 ns/op on Apple M4 (median of 20 runs, re-measured 2026-10-22); ~940-1876 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
"note": "Measured with BenchmarkPerformanceBaseline (ParseFromModelTokens production path), -count=10 -benchmem, median. Baseline set at ~2.5x the M4 median: GitHub ubuntu-latest runners measure about 1.5-3.2x slower than M4 on these queries (up to ~3.2x), so a 1.5x baseline (limit ~2.4x M4 at this tolerance) would fail CI's slowest runs."
},
"CTE": {
"ns_per_op": 1400,
"tolerance_percent": 60,
"description": "Common Table Expression with WITH clause",
- "current_performance": "~561 ns/op on Apple M4 (median of 10 runs, re-measured 2026-10-13); ~824-1692 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
+ "current_performance": "~644 ns/op on Apple M4 (median of 20 runs, re-measured 2026-10-22); ~824-1692 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
"note": "Measured with BenchmarkPerformanceBaseline (ParseFromModelTokens production path), -count=10 -benchmem, median. Baseline set at ~2.5x the M4 median: GitHub ubuntu-latest runners measure about 1.5-3.2x slower than M4 on these queries (up to ~3.2x), so a 1.5x baseline (limit ~2.4x M4 at this tolerance) would fail CI's slowest runs."
},
"INSERT": {
"ns_per_op": 950,
"tolerance_percent": 60,
"description": "Simple INSERT statement",
- "current_performance": "~382 ns/op on Apple M4 (median of 10 runs, re-measured 2026-10-13); ~605-1169 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
+ "current_performance": "~406 ns/op on Apple M4 (median of 20 runs, re-measured 2026-10-22); ~605-1169 ns/op typical on CI (GitHub ubuntu-latest Benchmark job, range over the last 9 Tests runs on main, 0715bb9..61ca6c8)",
"note": "Measured with BenchmarkPerformanceBaseline (ParseFromModelTokens production path), -count=10 -benchmem, median. Baseline set at ~2.5x the M4 median: GitHub ubuntu-latest runners measure about 1.5-3.2x slower than M4 on these queries (up to ~3.2x), so a 1.5x baseline (limit ~2.4x M4 at this tolerance) would fail CI's slowest runs."
},
"TokenizationThroughput": {
diff --git a/scripts/gen-readme-metrics/metrics.json b/scripts/gen-readme-metrics/metrics.json
index e3d14c41..ee42b285 100644
--- a/scripts/gen-readme-metrics/metrics.json
+++ b/scripts/gen-readme-metrics/metrics.json
@@ -1,14 +1,14 @@
{
"stage": "parse",
"query": "SELECT id, name FROM users",
- "parse_ns_per_op": 318,
+ "parse_ns_per_op": 349,
"hardware": "Apple M4",
"go_version": "1.27",
- "runs": 10,
+ "runs": 20,
"benchmark": "BenchmarkPerformanceBaseline",
"benchmark_package": "./pkg/sql/parser/",
"sql99_estimate": "~80–85%",
"dialects": 8,
"race_conditions": 0,
- "measured_at": "2026-10-13"
+ "measured_at": "2026-10-22"
}
diff --git a/website/src/content/articles/lint-sql-in-ci-with-a-go-binary.md b/website/src/content/articles/lint-sql-in-ci-with-a-go-binary.md
index c1e0ea31..5d134bb9 100644
--- a/website/src/content/articles/lint-sql-in-ci-with-a-go-binary.md
+++ b/website/src/content/articles/lint-sql-in-ci-with-a-go-binary.md
@@ -16,7 +16,7 @@ SQL linters exist in several ecosystems. The most popular, SQLFluff, is a Python
A Go binary removes most of that:
- **One file.** `go install` produces a single executable with no runtime dependencies. In CI it is one cached download.
-- **Exact pinning.** `@v1.15.0` in the install command pins every rule and every parser decision. A new release cannot change your build overnight.
+- **Exact pinning.** `@v1.16.0` in the install command pins every rule and every parser decision. A new release cannot change your build overnight.
- **Same binary everywhere.** Developers run the same version in a pre-commit hook that CI runs on the pull request, so "passes locally, fails in CI" stops happening.
- **Fast start-up.** There is no interpreter to boot, which matters when a hook runs on every commit.
@@ -35,7 +35,7 @@ Linting SQL in CI is really three separate checks, and it helps to keep them apa
Each exits with a non-zero status on failure, so they work in any CI system:
```bash
-go install github.com/ajitpratap0/GoSQLX/cmd/gosqlx@v1.15.0
+go install github.com/ajitpratap0/GoSQLX/cmd/gosqlx@v1.16.0
gosqlx validate -r --dialect postgresql ./sql
gosqlx lint -r ./sql
@@ -84,7 +84,7 @@ jobs:
- uses: actions/setup-go@v5
with:
go-version: '1.26'
- - run: go install github.com/ajitpratap0/GoSQLX/cmd/gosqlx@v1.15.0
+ - run: go install github.com/ajitpratap0/GoSQLX/cmd/gosqlx@v1.16.0
- run: gosqlx action --files '**/*.sql' --severity warning
- run: gosqlx format --check $(git ls-files '*.sql')
```
diff --git a/website/src/data/competitor-benchmarks.json b/website/src/data/competitor-benchmarks.json
index 4d7fadea..e0889052 100644
--- a/website/src/data/competitor-benchmarks.json
+++ b/website/src/data/competitor-benchmarks.json
@@ -1,21 +1,21 @@
{
"schemaVersion": 1,
- "generatedAt": "2026-10-15T22:14:33Z",
- "commit": "c95aa7c719d046d78a9f9075eb1b315bd043cf37",
+ "generatedAt": "2026-10-22T11:43:59Z",
+ "commit": "e9c5db91a8eda4f98d697a53dbd997ebd5255c87",
"dirty": false,
- "goVersion": "go1.27.2",
+ "goVersion": "go1.26.9",
"hardware": {
- "cpu": "Apple M4",
- "goos": "darwin",
- "goarch": "arm64",
- "numCPU": 10
+ "cpu": "AMD EPYC 9V74 80-Core Processor",
+ "goos": "linux",
+ "goarch": "amd64",
+ "numCPU": 4
},
"stage": "e2e",
"method": {
"command": "go test -run=^$ -bench=^BenchmarkParse$ -benchmem -count=10 .",
"count": 10,
"statistic": "median",
- "rawOutput": "results/latest.txt"
+ "rawOutput": "/home/runner/work/_temp/bench/latest.txt"
},
"caveat": "The libraries implement different SQL dialects and build different ASTs (pg_query_go wraps the real PostgreSQL parser through CGo and converts its tree to Go structs; Vitess, TiDB and xwb1989 implement MySQL grammars). Each figure is the end-to-end cost of turning the same SQL text into that library's AST on the stated hardware, not identical work.",
"parsers": [
@@ -23,7 +23,7 @@
"id": "gosqlx",
"name": "GoSQLX",
"module": "github.com/ajitpratap0/GoSQLX",
- "version": "commit c95aa7c719d0",
+ "version": "commit e9c5db91a8ed",
"dialect": "multi-dialect (default settings)",
"cgo": false
},
@@ -123,8 +123,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 924.8,
- "bytesPerOp": 2229,
+ "nsPerOp": 2138,
+ "bytesPerOp": 2226,
"allocsPerOp": 7
},
{
@@ -132,7 +132,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 7106.5,
+ "nsPerOp": 10811,
"bytesPerOp": 1816,
"allocsPerOp": 36
},
@@ -141,7 +141,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 870.2,
+ "nsPerOp": 1587,
"bytesPerOp": 840,
"allocsPerOp": 14
},
@@ -150,7 +150,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 1464,
+ "nsPerOp": 2800.5,
"bytesPerOp": 2296,
"allocsPerOp": 24
},
@@ -159,7 +159,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 3440.5,
+ "nsPerOp": 7896.5,
"bytesPerOp": 20008,
"allocsPerOp": 26
},
@@ -168,8 +168,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 2027.5,
- "bytesPerOp": 3945,
+ "nsPerOp": 4439,
+ "bytesPerOp": 3940,
"allocsPerOp": 21
},
{
@@ -177,7 +177,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 22686,
+ "nsPerOp": 32989.5,
"bytesPerOp": 5024,
"allocsPerOp": 111
},
@@ -186,7 +186,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2035,
+ "nsPerOp": 3625.5,
"bytesPerOp": 1528,
"allocsPerOp": 30
},
@@ -195,7 +195,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 3893.5,
+ "nsPerOp": 7217.5,
"bytesPerOp": 6032,
"allocsPerOp": 50
},
@@ -204,7 +204,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 5803,
+ "nsPerOp": 11826,
"bytesPerOp": 21128,
"allocsPerOp": 69
},
@@ -213,8 +213,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 3215,
- "bytesPerOp": 6063,
+ "nsPerOp": 6918.5,
+ "bytesPerOp": 6056.5,
"allocsPerOp": 20
},
{
@@ -222,7 +222,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 30034.5,
+ "nsPerOp": 43527.5,
"bytesPerOp": 6624,
"allocsPerOp": 145
},
@@ -231,7 +231,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2693.5,
+ "nsPerOp": 4699.5,
"bytesPerOp": 1776,
"allocsPerOp": 33
},
@@ -240,7 +240,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 4849.5,
+ "nsPerOp": 8534.5,
"bytesPerOp": 6416,
"allocsPerOp": 54
},
@@ -249,7 +249,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 11725,
+ "nsPerOp": 25930.5,
"bytesPerOp": 62480,
"allocsPerOp": 97
},
@@ -258,8 +258,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 2229.5,
- "bytesPerOp": 4193,
+ "nsPerOp": 4817.5,
+ "bytesPerOp": 4189,
"allocsPerOp": 21
},
{
@@ -267,7 +267,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 17666,
+ "nsPerOp": 25832,
"bytesPerOp": 4072,
"allocsPerOp": 86
},
@@ -276,7 +276,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 1778,
+ "nsPerOp": 3090,
"bytesPerOp": 1240,
"allocsPerOp": 25
},
@@ -285,7 +285,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 3417,
+ "nsPerOp": 6572,
"bytesPerOp": 5152,
"allocsPerOp": 45
},
@@ -294,7 +294,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 5897,
+ "nsPerOp": 12192,
"bytesPerOp": 20960,
"allocsPerOp": 61
},
@@ -303,8 +303,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 1887,
- "bytesPerOp": 3608,
+ "nsPerOp": 4076,
+ "bytesPerOp": 3605,
"allocsPerOp": 16
},
{
@@ -312,7 +312,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 15954.5,
+ "nsPerOp": 23526.5,
"bytesPerOp": 3816,
"allocsPerOp": 75
},
@@ -321,8 +321,8 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2175.5,
- "bytesPerOp": 4201,
+ "nsPerOp": 3976.5,
+ "bytesPerOp": 4200,
"allocsPerOp": 28
},
{
@@ -330,7 +330,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 3362,
+ "nsPerOp": 6279,
"bytesPerOp": 5224,
"allocsPerOp": 44
},
@@ -339,7 +339,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 9677.5,
+ "nsPerOp": 21828,
"bytesPerOp": 61896,
"allocsPerOp": 59
},
@@ -348,8 +348,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 2747.5,
- "bytesPerOp": 4940,
+ "nsPerOp": 5828.5,
+ "bytesPerOp": 4934,
"allocsPerOp": 24
},
{
@@ -357,7 +357,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 23176.5,
+ "nsPerOp": 33529.5,
"bytesPerOp": 5472,
"allocsPerOp": 112
},
@@ -366,7 +366,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2516.5,
+ "nsPerOp": 4415,
"bytesPerOp": 1896,
"allocsPerOp": 37
},
@@ -375,7 +375,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 4917.5,
+ "nsPerOp": 9157.5,
"bytesPerOp": 6936,
"allocsPerOp": 64
},
@@ -393,8 +393,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 1898.5,
- "bytesPerOp": 3248,
+ "nsPerOp": 4062,
+ "bytesPerOp": 3243.5,
"allocsPerOp": 14
},
{
@@ -402,7 +402,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 14279,
+ "nsPerOp": 21010,
"bytesPerOp": 3440,
"allocsPerOp": 70
},
@@ -411,8 +411,8 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 2070.5,
- "bytesPerOp": 3977,
+ "nsPerOp": 3903,
+ "bytesPerOp": 3976,
"allocsPerOp": 25
},
{
@@ -420,7 +420,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 3220.5,
+ "nsPerOp": 6021.5,
"bytesPerOp": 4688,
"allocsPerOp": 44
},
@@ -438,8 +438,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 8775.5,
- "bytesPerOp": 17697,
+ "nsPerOp": 18293,
+ "bytesPerOp": 17667,
"allocsPerOp": 56
},
{
@@ -447,7 +447,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 81637,
+ "nsPerOp": 116212.5,
"bytesPerOp": 17512,
"allocsPerOp": 398
},
@@ -456,8 +456,8 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 6988.5,
- "bytesPerOp": 6402,
+ "nsPerOp": 12304.5,
+ "bytesPerOp": 6401,
"allocsPerOp": 73
},
{
@@ -465,7 +465,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 12445,
+ "nsPerOp": 21303,
"bytesPerOp": 16048,
"allocsPerOp": 124
},
@@ -474,7 +474,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 21259.5,
+ "nsPerOp": 42654,
"bytesPerOp": 66120,
"allocsPerOp": 253
},
@@ -483,8 +483,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 1442.5,
- "bytesPerOp": 2556,
+ "nsPerOp": 3185,
+ "bytesPerOp": 2554,
"allocsPerOp": 19
},
{
@@ -492,7 +492,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 8917.5,
+ "nsPerOp": 13373,
"bytesPerOp": 2432,
"allocsPerOp": 51
},
@@ -501,7 +501,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 1248.5,
+ "nsPerOp": 2202,
"bytesPerOp": 952,
"allocsPerOp": 17
},
@@ -510,7 +510,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 2105,
+ "nsPerOp": 3913.5,
"bytesPerOp": 2832,
"allocsPerOp": 34
},
@@ -519,7 +519,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 4208.5,
+ "nsPerOp": 9105,
"bytesPerOp": 20176,
"allocsPerOp": 37
},
@@ -528,8 +528,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 1200,
- "bytesPerOp": 2165,
+ "nsPerOp": 2641,
+ "bytesPerOp": 2162,
"allocsPerOp": 15
},
{
@@ -537,7 +537,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 9422.5,
+ "nsPerOp": 14107.5,
"bytesPerOp": 2208,
"allocsPerOp": 50
},
@@ -546,7 +546,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 1158,
+ "nsPerOp": 2044,
"bytesPerOp": 920,
"allocsPerOp": 19
},
@@ -555,7 +555,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 2127,
+ "nsPerOp": 3922,
"bytesPerOp": 3032,
"allocsPerOp": 26
},
@@ -564,7 +564,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 4062.5,
+ "nsPerOp": 9032.5,
"bytesPerOp": 20208,
"allocsPerOp": 40
},
@@ -573,8 +573,8 @@
"parser": "gosqlx",
"supported": true,
"samples": 10,
- "nsPerOp": 841.2,
- "bytesPerOp": 1763.5,
+ "nsPerOp": 1771.5,
+ "bytesPerOp": 1761,
"allocsPerOp": 7
},
{
@@ -582,7 +582,7 @@
"parser": "pg_query_go",
"supported": true,
"samples": 10,
- "nsPerOp": 5678,
+ "nsPerOp": 8875.5,
"bytesPerOp": 1416,
"allocsPerOp": 30
},
@@ -591,7 +591,7 @@
"parser": "vitess",
"supported": true,
"samples": 10,
- "nsPerOp": 755.3,
+ "nsPerOp": 1343,
"bytesPerOp": 704,
"allocsPerOp": 11
},
@@ -600,7 +600,7 @@
"parser": "tidb",
"supported": true,
"samples": 10,
- "nsPerOp": 1223,
+ "nsPerOp": 2311.5,
"bytesPerOp": 1840,
"allocsPerOp": 16
},
@@ -609,7 +609,7 @@
"parser": "xwb1989",
"supported": true,
"samples": 10,
- "nsPerOp": 3077.5,
+ "nsPerOp": 6735.5,
"bytesPerOp": 19928,
"allocsPerOp": 26
}
diff --git a/website/src/data/metrics.ts b/website/src/data/metrics.ts
index b0e4eb20..07bc11bd 100644
--- a/website/src/data/metrics.ts
+++ b/website/src/data/metrics.ts
@@ -8,7 +8,7 @@
*
* Benchmark values come from `BenchmarkPerformanceBaseline` (pkg/sql/parser),
* the parse stage only (pre-tokenized input -> AST via ParseFromModelTokens),
- * median of 10 runs with -benchmem, and are recorded in
+ * median of 20 runs with -benchmem, and are recorded in
* `performance_baselines.json` (`current_performance`). They are NOT tokenize
* or end-to-end numbers. This file is seeded by hand from that JSON; it will
* later be fed by the generated metrics.json (plan section 5.2).
@@ -62,13 +62,13 @@ export const BENCH_ENV = {
goVersion: 'Go 1.27',
stage: 'parse stage',
/** Date the PARSE_BENCHMARKS figures were re-measured (ISO). */
- measuredOn: '2026-10-13',
+ measuredOn: '2026-10-22',
/** Parse-stage benchmark source file and CI baseline file, as repo paths. */
benchFile: 'pkg/sql/parser/performance_regression_test.go',
baselinesFile: 'performance_baselines.json',
- source: 'BenchmarkPerformanceBaseline, median of 10 runs, re-measured 2026-10-13',
- /** Command that reproduces PARSE_BENCHMARKS from a repo checkout (summarise the 10 runs with benchstat). */
- command: "go test -run='^$' -bench=BenchmarkPerformanceBaseline -benchmem -count=10 ./pkg/sql/parser/",
+ source: 'BenchmarkPerformanceBaseline, median of 20 runs, re-measured 2026-10-22',
+ /** Command that reproduces PARSE_BENCHMARKS from a repo checkout (summarise the 20 runs with benchstat). */
+ command: "go test -run='^$' -bench=BenchmarkPerformanceBaseline -benchmem -count=20 ./pkg/sql/parser/",
} as const;
export interface ParseBenchmark {
@@ -82,11 +82,11 @@ export interface ParseBenchmark {
}
export const PARSE_BENCHMARKS: ParseBenchmark[] = [
- { name: 'Simple SELECT', query: 'SELECT id, name FROM users', nsPerOp: 318, ciBaselineNs: 800 },
- { name: 'INSERT', query: 'Simple INSERT statement', nsPerOp: 382, ciBaselineNs: 950 },
- { name: 'CTE', query: 'WITH clause', nsPerOp: 561, ciBaselineNs: 1400 },
- { name: 'Window Function', query: 'ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...)', nsPerOp: 585, ciBaselineNs: 1500 },
- { name: 'Complex Query', query: 'JOIN, WHERE, ORDER BY, LIMIT', nsPerOp: 1165, ciBaselineNs: 2900 },
+ { name: 'Simple SELECT', query: 'SELECT id, name FROM users', nsPerOp: 349, ciBaselineNs: 800 },
+ { name: 'INSERT', query: 'Simple INSERT statement', nsPerOp: 406, ciBaselineNs: 950 },
+ { name: 'CTE', query: 'WITH clause', nsPerOp: 644, ciBaselineNs: 1400 },
+ { name: 'Window Function', query: 'ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...)', nsPerOp: 631, ciBaselineNs: 1500 },
+ { name: 'Complex Query', query: 'JOIN, WHERE, ORDER BY, LIMIT', nsPerOp: 1234, ciBaselineNs: 2900 },
];
export function opsPerSec(nsPerOp: number): number {